Chciałbym połączyć dziewięć ramek danych Pandy razem w jedną ramkę danych, wykonując łączenie na dwóch kolumnach, kontrolując nazwy kolumn. czy to możliwe?Pandy: scalanie wielu ramek danych i nazw kolumn kontrolnych?
Mam dziewięć zestawów danych. Wszystkie z nich posiadają następujące kolumny:
org, name, items,spend
Chcę połączyć je w jeden dataframe z następującymi kolumnami:
org, name, items_df1, spend_df1, items_df2, spend_df2, items_df3...
Czytałem dokumentację na merging and joining. Mogę obecnie scalić dwa zbiory danych razem tak:
ad = pd.DataFrame.merge(df_presents, df_trees,
on=['practice', 'name'],
suffixes=['_presents', '_trees'])
Działa to doskonale, robiąc print list(aggregate_data.columns.values)
pokazuje mi następujące kolumny:
[org', u'name', u'spend_presents', u'items_presents', u'spend_trees', u'items_trees'...]
Ale jak mogę to zrobić dla dziewięciu kolumnach? merge
wydaje się akceptować tylko dwa naraz i jeśli zrobię to sekwencyjnie, moje nazwy kolumn będą bardzo nieładne.
Właśnie znalazłem ten http://stackoverflow.com/questions/24853762/pandas-merging-multiple-dataframes, ale nie jestem pewien, czy działa na mój przykład - chyba muszę połączyć, a następnie scalić w jakiś sposób? Chcę napisać moje dane wyjściowe do tabeli BigQuery, więc nie wiem, czy hierarchiczne ramki danych będą działać dla mnie. – Richard
Znaleźliśmy http://stackoverflow.com/questions/23668427/pandas-joining-multiple-dataframes-on-columns?rq=1, co jest bardziej obiecujące, ale nie wyjaśnia sposobu kontrolowania nazw kolumn. – Richard