Bazı nedenlerden dolayı, bu birleşimin doğru şekilde çalışmasını sağlayamıyorum.Veri Levhaları Pandalarda Birleştirme
Bu Dataframe (rspars) 2.000 + satırlar var ...
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
bu Dataframe için rsparid
sütunları temel bir tabloya yukarıdaki katılmaya çalışıyor ...
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
Bu kullanma ...
df = pd.merge(datalines, rspars, how='left', on='rsparid')
Ben boşlukları olsun ..
line_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
"Veritabanları" sütununun rsparlardan daha fazla sıraya sahip olabileceğini unutmayın, böylece sol birleştirin. Yanlış bir şey yapmalı mıyım? Birkaç satır aşağı veri düştü 2
Ben de bu şekilde çalıştı ...
df = datalines.merge(rspars, how='left', on='rsparid')
ÖRNEK # ...
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
birleştiriliyor ...
datalines.merge(rspars, how='left', on='rsparid')
Çıktı ...
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
Biraz 'datalines' gösterebiliyor musunuz? –
İlk gösterilen Dataframe, rsparlardır. Veri tabloları, bir tanesi rsparid olan düzinelerce tarlaya sahiptir. – TravisVOX
Netlik için biraz daha fazla bilgi ekledim. – TravisVOX