Ich habe einen Datenrahmen, die dfDays aufgerufen wird, die wie folgt aussehen:Pandas einfügen Wert in Datenrahmen mit 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
Ich füge in eine neue datadrame genannt dfNew die Werte der dfDays aber das Hinzufügen einer Kategorie nach auf die „groupe“
ist die letzte Datenrahmen Nehmen wir an, dass ich erhalten möchte, ist: (bei den Werten sehen nicht)
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
Hier mein Code, um das zu tun:
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)
Mein Problem ist, dass, bevor die ersten .loc mit Index meiner Spalten wie dies mit Blick in 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')
Aber nachdem ich verwenden .loc mehr Mal, wenn die Spalte vertauscht und schauen wie folgt:
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')
Ich verstehe nicht, wie die Verwendung von .loc in der Lage ist, die Reihenfolge meiner Spalten zu tauschen? Danke fürs Lesen.
Es scheint es ein Problem mit Duplikaten ist. Können Sie die Datenstichprobe für einen kleinen Datenrahmen ändern - z. 5 Zeilen und 3 Spalten mit Duplikaten in der Spalte "Groupe" mit der gewünschten Ausgabe? – jezrael
Sie meinen, Sie würden 10 Werte für die Gruppe "Dirigeant" sehen? Bitte beachten Sie, dass der gesamte "Sirenenwert" nicht verdoppelt wird, nur weil ich diese Daten nicht veröffentlichen kann. – Astrus