research: back-test a second-gift conversion model on DonorsChoose
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 28/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- python
- Área
- data, machine-learning
Línea de trabajo
Start by getting the local DonorsChoose file as described in docs/results/datasets.md, then read philanthropy.datasets.load_donorschoose to see which first-gift fields are available. Use philanthropy.model_selection.compare_to_rule for the rule baselines and paired bootstrap, and scripts/make_results_pages.py for the Results row format. Done means a test-year report of top-10% hit rate and AUC against the best validation rule, recorded as either a Results row or a rejected note with the numbers.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Goal
Find out whether a model beats a simple rule at picking which first-time donors will give again within 12 months.
Acceptance criteria
- Population: donors whose first gift falls in fiscal year T. Label: another gift within 12 months of the first.
load_donorschoosetruncatesgift_dateto the first of the month, so define "within 12 months" in whole months and say so; a second gift in the same month as the first is ambiguous and must be handled explicitly (drop or count, stated). - Baseline rules: "first gift above the median", plus one-column rules on what the loader actually returns (
donor_type,was_matched, the two gift-card flags). There is no recurring-gift field in this file. The reported baseline is the best rule on the validation fold. - Model:
DonorPropensityModelon features known at the first gift only (amount, month,donor_type,was_matched, gift-card flags), so nothing after the first gift leaks in.load_donorschoosereturns no project fields; joining them would need a second file and a note on its licence. - Protocol: choose settings on a validation fiscal year, report once on a later test year: top-10% hit rate and AUC with a paired bootstrap interval against the best rule.
- Outcome recorded either way: a Results row if it wins, or a "rejected" note with the numbers if it doesn't.
Scope
Research and a Results-page row. No new public estimator unless the model clearly wins on the test year.
Where to start
philanthropy.datasets.load_donorschoose(local file;docs/results/datasets.mdsays where to get it)philanthropy.model_selection.compare_to_rulefor the bootstrap and verdict logic to copy. It only acceptstaskin{"upgrade", "lapse", "ask"}, so it cannot run this comparison as is; adding a task is part of the public API and only follows an adopt resultscripts/make_results_pages.pyfor how existing rows are generated
Dependencies
- None
Phase order is a release plan, not a rule against picking up independent work early. Comment on this issue before you start so two people don't build the same thing.
- Lenguaje dominante
- Python
- Estrellas
- 11
- Forks
- 23
- Merge medio
- 1 d 11 h
- PR fusionados (30 d)
- 30
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de PhilanthroPy-Project/PhilanthroPy
-
bug roadmap
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
PhilanthroPy-Project/PhilanthroPy#366 ·
Los mantenedores suelen responder en 1 día
-
documentation good first issue roadmap
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
PhilanthroPy-Project/PhilanthroPy#361 ·
Los mantenedores suelen responder en 1 día
-
docs: `read_gifts` docstring names 5 of the 7 `GIFT_SOURCES`, and two registry comments point at CLI code that is going awayPosiblemente ocupada @shivamlalakiya la tomó hoy. Abiertobeginner documentation good first issue roadmap
Dificultad 1/5 1-3 horas Aptitud para principiantes 82/100
PhilanthroPy-Project/PhilanthroPy#360 ·
Los mantenedores suelen responder en 1 día
-
enhancement help wanted roadmap
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
PhilanthroPy-Project/PhilanthroPy#345 ·
Los mantenedores suelen responder en 1 día
-
beginner documentation good first issue roadmap
Dificultad 2/5 Medio día Aptitud para principiantes 68/100
PhilanthroPy-Project/PhilanthroPy#342 ·
Los mantenedores suelen responder en 1 día
Todos los issues de PhilanthroPy-Project/PhilanthroPy
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
FinanceFlash/unvibecode#577 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
area/test type/bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Clodmony/starship-coop#70 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
punitarani/fli#270 ·
-
🐛 Bug 🔔 Pending processing
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
jumpserver/jumpserver#17980 ·
Los mantenedores suelen responder en 1 día
-
community enhancement good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
Los mantenedores suelen responder en 1 día