Vorrei unire nove dataframes Pandas insieme in un singolo dataframe, facendo un join su due colonne, controllando i nomi delle colonne. È possibile?Panda: unire più dataframes e controllare i nomi delle colonne?
Ho nove serie di dati. Tutti loro hanno le seguenti colonne:
org, name, items,spend
voglio di unirsi a loro in un unico dataframe con le seguenti colonne:
org, name, items_df1, spend_df1, items_df2, spend_df2, items_df3...
Ho letto la documentazione su merging and joining. Posso attualmente unire due insiemi di dati insieme in questo modo:
ad = pd.DataFrame.merge(df_presents, df_trees,
on=['practice', 'name'],
suffixes=['_presents', '_trees'])
Questa grande opera, facendo print list(aggregate_data.columns.values)
mi mostra le seguenti colonne:
[org', u'name', u'spend_presents', u'items_presents', u'spend_trees', u'items_trees'...]
Ma come posso fare questo per nove colonne? merge
sembra solo accettarne due alla volta, e se lo faccio in sequenza, i nomi delle mie colonne finiranno per essere molto disordinati.
Ho appena trovato questo http://stackoverflow.com/questions/24853762/pandas-merging-multiple-dataframes ma non sono sicuro che funzioni per il mio esempio: suppongo di dover concatenare, quindi unire in qualche modo? Voglio scrivere il mio output su una tabella BigQuery, quindi non so se i dataframer gerarchici funzioneranno per me. – Richard
Trovato questo http://stackoverflow.com/questions/23668427/pandas-joining-multiple-dataframes-on-columns?rq=1 che è più promettente, ma non spiega come controllare i nomi delle colonne. – Richard