我有一个名为dfDays看起来像这样的数据帧:熊猫插入值到数据帧与LOC
siren Groupe nomination_frequence demission_frequence depart_frequence modification_frequence deces_frequence confirmation_frequence sansprecision_frequence nbJoursMoyenne ecart_type nbJoursDernierEvenementExtraction
0 XXX Dirigeants 1 0 0 0 0 0 0 None NaN 2345
1 XXX Autres 2 0 2 0 0 0 0 191 270.586 1217
2 XXX Dirigeants 0 0 0 0 0 0 3 281 281 1283
3 XXX Dirigeants 2 2 0 0 0 0 0 61 86.7384 1583
4 XXX Dirigeants 1 1 0 0 0 0 5 93 136.118 1283
我加入到一个名为dfNew的dfDays的价值新datadrame但根据添加的类别以“GROUPE”
让我们假设我想获得最终的数据框是:(不看值)
siren Dirigeants_nomination_frequence Dirigeants_demission_frequence Dirigeants_depart_frequence Dirigeants_modification_frequence Dirigeants_deces_frequence Dirigeants_confirmation_frequence Dirigeants_sansprecision_frequence MembresDuConseil_nomination_frequence MembresDuConseil_demission_frequence ... mouvement_ecart_type Dirigeants_nbJoursMoyenne Dirigeants_ecart_type Dirigeants_nbJoursDernierEvenementExtraction Autres_nbJoursMoyenne Autres_ecart_type Autres_nbJoursDernierEvenementExtraction MembresDuConseil_nbJoursMoyenne MembresDuConseil_ecart_type MembresDuConseil_nbJoursDernierEvenementExtraction
0 XXX 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 ... 0.0 NaN NaN 2345.0 NaN NaN 0.0 NaN NaN 0.0
3 XXX 0.0 0.0 0.0 0.0 0.0 0.0 3.0 0.0 0.0 ... 0.0 281.0 281.000000 1283.0 191.0 270.586195 1217.0 NaN NaN 0.0
11 XXX 2.0 2.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 ... 0.0 61.0 86.738432 1583.0 NaN NaN 0.0 NaN NaN 0.0
16 XXX 1.0 1.0 0.0 0.0 0.0 0.0 5.0 0.0 0.0 ... 0.0 93.0 136.118413 1283.0 NaN NaN 0.0 NaN NaN 0.0
这里是我的代码,为了做到这一点:
liste_nom = ['nomination_frequence','demission_frequence','depart_frequence','modification_frequence','deces_frequence','confirmation_frequence','sansprecision_frequence',
'nbJoursMoyenne','ecart_type', 'nbJoursDernierEvenementExtraction']
for index, row in dfDays.iterrows():
#print(row)
name = row['Groupe']
siren = row['siren']
index = dfRight[dfRight['siren'] == siren].index[0]
print(dfNew.columns)
for value in liste_nom:
#print(row)
#print(row[value])
dfNew.loc[index, name + '_' + value] = row[value]
print(dfNew.columns)
我的问题是使用第一的.loc索引之前我的专栏看起来像这样在dfNew:
Index(['siren', 'Dirigeants_nomination_frequence',
'Dirigeants_demission_frequence', 'Dirigeants_depart_frequence',
'Dirigeants_modification_frequence', 'Dirigeants_deces_frequence',
'Dirigeants_confirmation_frequence',
'Dirigeants_sansprecision_frequence',
'MembresDuConseil_nomination_frequence',
'MembresDuConseil_demission_frequence',
'MembresDuConseil_depart_frequence',
'MembresDuConseil_modification_frequence',
'MembresDuConseil_deces_frequence',
'MembresDuConseil_confirmation_frequence',
'MembresDuConseil_sansprecision_frequence',
'Autres_nomination_frequence', 'Autres_demission_frequence',
'Autres_depart_frequence', 'Autres_modification_frequence',
'Autres_deces_frequence', 'Autres_confirmation_frequence',
'Autres_sansprecision_frequence', 'mouvements_nbJoursMoyenne',
'mouvement_ecart_type'],
dtype='object')
但我使用的.loc多时间后柱进行交换,并期待像这样:
Index(['siren', 'Dirigeants_nomination_frequence',
'Dirigeants_demission_frequence', 'Dirigeants_depart_frequence',
'Dirigeants_modification_frequence', 'Dirigeants_deces_frequence',
'Dirigeants_confirmation_frequence',
'Dirigeants_sansprecision_frequence',
'MembresDuConseil_nomination_frequence',
'MembresDuConseil_demission_frequence',
'MembresDuConseil_depart_frequence',
'MembresDuConseil_modification_frequence',
'MembresDuConseil_deces_frequence',
'MembresDuConseil_confirmation_frequence',
'MembresDuConseil_sansprecision_frequence',
'Autres_nomination_frequence', 'Autres_demission_frequence',
'Autres_depart_frequence', 'Autres_modification_frequence',
'Autres_deces_frequence', 'Autres_confirmation_frequence',
'Autres_sansprecision_frequence', 'mouvements_nbJoursMoyenne',
'mouvement_ecart_type', 'Dirigeants_nbJoursMoyenne',
'Dirigeants_ecart_type', 'Dirigeants_nbJoursDernierEvenementExtraction',
'Autres_nbJoursMoyenne', 'Autres_ecart_type',
'Autres_nbJoursDernierEvenementExtraction',
'MembresDuConseil_nbJoursMoyenne', 'MembresDuConseil_ecart_type',
'MembresDuConseil_nbJoursDernierEvenementExtraction'],
dtype='object')
我不明白如何使用.loc能够交换我的列顺序? 感谢您的阅读。
似乎有问题重复。你能否改变小数据帧的数据样本 - 例如5行和3列,在'Groupe'列中有重复,并且具有所需的输出? – jezrael
你的意思就像你会看到10个值的群体“Dirigeant”例如?请注意,所有'siren'的价值都不重复,只是因为我无法公开这些数据。 – Astrus