Deferring Evaluation of Terms
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
Direzione di ricerca
Non sono indicati file di implementazione né test. Inizia esaminando i punti di ingresso di Patsy per il parsing delle formule e la gestione dei termini, quindi determina se i termini assorbiti possono essere intercettati prima della costruzione della matrice densa; il lavoro sarà considerato completato quando saranno definiti una sintassi concordata e un design per il parsing di tali termini senza materializzarli.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
I have written a function called AbsorbingLS that can absorb a large number (millions) of categorical variables or categorical interactions. It is implemented using a Frisch-Waugh-Lovell step where the categoricals are handled using scipy sparse matrices. I would like to add a formula interface. Suppose I have a function A() that indicates that a variable should be absorbed, is there any place to intervene in the formula parsing for a formula that looks like y ~ 1 + x + A(cat) + A(cat*x)?
I can use another syntax. In an instrumental variable regression I use the syntax y ~ 1 + x1 + x2 + [x3 ~ z1 + z2] which is used to determine the configuration of the 2 required regressions. This works fine since it is easy to parse the [] and then it is a couple of standard calls. This approach doesn't obviously work here since I must avoid creating any arrays. I could use a similar structure here, so something like y ~ 1 + x + {cat +cat*x} ({} for simplicity in parsing) which I would then need to find a good way to turn cat +cat*x into usable terms (w/o populating dense arrays).
Any suggestions on how I could write a formula where I could intercept it using something like the pseudocode
1. Patsy parses to terms
2. I remove and terms that are absorbed, which are too large to express as dense arrays
3. Patsy parses the non-absorbed terms, which have reasonable sizes as dense matrices
Any suggestions are appreciated.
- Lingua principale
- Python
- Stelle
- 990
- Fork
- 106
- Merge medio
- 7g 34m
- PR unite (30g)
- 1
Preparare l'ambiente
Non abbiamo ancora controllato i file di configurazione di questo progetto. Parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di pydata/patsy
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 68/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 55/100
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
Tutte le issue di pydata/patsy
Issue simili
-
customer-reported
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
Azure/azure-cli#34150 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
community-request
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 95/100
NVIDIA-NeMo/Curator#2464 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
weblate-discover crashes with an unhandled FileNotFoundError when the directory does not existAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
WeblateOrg/translation-finder#1099 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
trezor/trezor-firmware#7997 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno