2014-09-12 20 views
5

Jak utworzyć pandę DataFrame z dwóch i więcej słowników mających wspólne klucze? Oznacza to, że do konwersjiŁączenie słowników tego samego klucza w ramce danych w pandach

d1 = {'a': 1} 
d2 = {'a': 3} 
... 

w dataframe z kolumnami ['d1', 'd2', ...] wiersze indeksowane jak "a" i wartości określonych przez odpowiednie słowników?

+0

To pytanie zostało tu pytanie: http://stackoverflow.com/questions/18425225/getting-the-name-of-a-variable-as-a-string –

+0

@ColonelBeauvel eh, myślę, że tylko jeśli zmrużysz oczy, chyba że przez przypadek połączyłeś niewłaściwe pytanie – Ajean

+0

@ Dyskietki Ajean mogły zostać nazwane d45, d34, ... itp. Z pewnymi liczbami losowymi. W takim przypadku poniższa odpowiedź nie działa. Autor w linku podkreśla tę trudną kwestię: "Chciałbym stworzyć DataFrame w Pandach z tej listy, gdzie nazwy kolumn są podane przez nazwy rzeczywistych słowników" –

Odpowiedz

4
import pandas as pd 
d1 = {'a': 1, 'b':2} 
d2 = {'a': 3, 'b':5} 

df = pd.DataFrame([d1, d2]).T 
df.columns = ['d{}'.format(i) for i, col in enumerate(df, 1)] 

daje

In [40]: df 
Out[40]: 
    d1 d2 
a 1 3 
b 2 5 
Powiązane problemy