這是有問題的代碼:
import pandas as pd
在這里,我創建了一個src包含 3 個資料框的示例字典:
src = {}
for i in range(1,4):
src[i] = pd.DataFrame({'a':[i, 2*i, 3*i], 'b':[10*i, 20*i, 30*i], 'c':[100*i, 200*i, 300*i]})
display(src[i])
src這是在字典中創建的 3 個資料框:
a b c
0 1 10 100
1 2 20 200
2 3 30 300
a b c
0 2 20 200
1 4 40 400
2 6 60 600
a b c
0 3 30 300
1 6 60 600
2 9 90 900
在這里,我想將字典中a每個資料幀的列附加到src字典中的a資料幀,output并將列附加b到b資料幀。
output = {}
for i in src:
output['a'] = output['a'].concat([output[i]['a'], src[i][a]], axis = 1)
output['b'] = output['b'].concat([output[i]['b'], src[i][b]], axis = 1)
我收到此錯誤訊息:
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
Input In [30], in <cell line: 11>()
10 # retrieve a column from all source dataframes, put them in a new dataframe. and these new dataframes are in a new dictionary.
11 for i in src:
---> 12 output['a'] = output['a'].concat([output[i]['a'], src[i][a]], axis = 1)
13 output['b'] = output['b'].concat([output[i]['b'], src[i][b]], axis = 1)
KeyError: 'a'
我該如何解決?
uj5u.com熱心網友回復:
問題是,在第一個回圈中,您沒有呼叫鍵'a'(此時output是一個空字典)-因此在定義處定義鍵output-不要使其成為空字典
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/487968.html
