2016-07-07 4 views
0

辞書にあるキーに関連付けられた値としてデータフレームを格納しようとしています。私はキーの辞書を印刷するとき、私は列名だけを取得します。辞書にキーに関連付けられた値としてデータフレームを格納するpython

keys=['A','B','C'] 

temp_list= {} 
temp_list=temp_list.fromkeys(keys,list) 

for key in keys: 
    temp_list[key]=[] 

for key in keys: 
    A=pd.DataFrame(np.random.randn(10, 5),columns=['a', 'b', 'c', 'd', 'e']) 
    temp_list[key].extend(A) 
    #print(temp_list[key]) 

for key in keys: 
    B=temp_list[key] 
    print(B) 

これは私が得る出力されている:

['a', 'b', 'c', 'd', 'e'] 
['a', 'b', 'c', 'd', 'e'] 
['a', 'b', 'c', 'd', 'e'] 

私のpythonに新しいです。データフレームを辞書に値として格納することは可能ですか?それが不可能な場合は、データフレームとキーの関連付けをどのように作成しますか?

答えて

0

どのようなものについて:

あなたは今、データフレームにキーをマップすることができ
keys=['a','b','c','d','e'] 
A=pd.DataFrame(np.random.randn(10, 5),columns=['a', 'b', 'c', 'd', 'e']) 

DICT_MAP={} 
for key in keys: 
    DICT_MAP[key]=pd.Series(A[key]) 

: DICT_MAP [「」] = ..SeriesDataFrame答えを

+0

おかげで、私のキーは、列とは異なります名前。私のポストを参照してください。あなたのコードにあなたのアイデアを実装しようとしたときにエラーが発生しましたValueError:サイズ5の配列を次元10の配列軸にコピーできません – swetha

+0

temp_list [key] .extend(A)to temp_list [key] .extend([A])、あなたの元のコードは動作するはずです。理由はDataFramesは通常、リストの中に追加/拡張されます。例えば[df1、df2 ...など] – justint

+0

temp_list [key] .append(A)も有効であることに注意してください。 L.extend(1)でもL.append(2)、L.extend([1])で別のオプションを使うことができます。 – justint

関連する問題