Per qualche motivo, non riesco a far funzionare correttamente questa unione.Dataframe Unisci in Panda
Questo dataframe (rspars) ha 2.000 + righe ...
rsparid f1mult f2mult f3mult
0 1 0.318 0.636 0.810
1 2 0.348 0.703 0.893
2 3 0.384 0.777 0.000
3 4 0.296 0.590 0.911
4 5 0.231 0.458 0.690
5 6 0.275 0.546 0.839
6 7 0.248 0.486 0.731
7 8 0.430 0.873 0.000
8 9 0.221 0.438 0.655
9 11 0.204 0.399 0.593
Quando si tenta di aderire sopra a una tabella in base al rsparid
colonne a questo dataframe ...
line_track line_race rsparid
line_date
2013-03-23 TP 10 1400
2013-02-23 GP 7 634
2013-01-01 GP 7 1508
2012-11-11 AQU 5 96
2012-10-11 BEL 2 161
l'utilizzo di questo ...
df = pd.merge(datalines, rspars, how='left', on='rsparid')
ottengo vuoti ..
0.123.516,410617 millionsline_track line_race rsparid f1mult f2mult f3mult
0 TP 10 1400 NaN NaN NaN
1 TP 10 1400 NaN NaN NaN
2 TP 10 1400 NaN NaN NaN
3 GP 7 634 NaN NaN NaN
4 GP 10 634 NaN NaN NaN
Nota, la colonna "datalines" può avere migliaia di righe in più rispetto alle rspars, quindi la join sinistra. Devo fare qualcosa di sbagliato?
Ho anche provato in questo modo ...
df = datalines.merge(rspars, how='left', on='rsparid')
ESEMPIO # 2
ho lasciato cadere i dati fino a un paio di righe ...
rspars:
rsparid f1mult f2mult f3mult
0 1400 0.216 0.435 0.656
datalines:
rsparid
0 1400
1 634
2 1508
3 96
4 161
5 1011
6 1007
7 518
8 1955
9 678
Unione ...
datalines.merge(rspars, how='left', on='rsparid')
uscita ...
rsparid f1mult f2mult f3mult
0 1400 NaN NaN NaN
1 634 NaN NaN NaN
2 1508 NaN NaN NaN
3 96 NaN NaN NaN
4 161 NaN NaN NaN
5 1011 NaN NaN NaN
6 1007 NaN NaN NaN
7 518 NaN NaN NaN
8 1955 NaN NaN NaN
9 678 NaN NaN NaN
Puoi mostrare un po 'di dataline? –
Il primo Dataframe mostrato è rspars. La tabella datalines contiene dozzine di campi, uno dei quali è rsparid. – TravisVOX
Ho aggiunto ulteriori informazioni per maggiore chiarezza. – TravisVOX