[英]how to concatenate dataframes in a dictionary
我有一個大小為 8 的字典,每個鍵(h3-h10)都有一個數據框作為值。
我想通過我的所有數據幀多次執行 pd.concat 。 我確實將 2 個數據幀與簡單的 pd.concat 合並,但我不知道如何遍歷我的所有數據幀
df=pd.concat([data['h3'][0],data['h4'][0]])
print(df)
它把它作為輸出
我的第一個想法是創建空數據框,然后使用 for 循環,將我擁有 h3-h10 的所有其余數據框附加為數據框
qhn = []
i=0
for k in data:
for i in range (0:len(data)-1):
qhn = pd.concat([qhn,data[f'h{i}}'][0]])
i+=1
print(qhn)
編輯:
我正在考慮在 for 循環的幫助下創建一系列數據框,然后執行 pd.concate(series):
for k in data:
ser.set_value(data[f'{k}'][0])
print(Series)
但它也給了我錯誤:
AttributeError:“系列”對象沒有屬性“set_value”
也許您可以使用data.values()
來獲取所有數據框的列表:
qhn = pd.concat(data.values())
您可以使用
dict.values<\/code>連接所有值以一次調用所有值:
out = pd.concat(data.values(), ignore_index=True)
可能有兩種情況來存儲此基礎
data<\/code> :
場景 1:將 DataFrame 直接存儲為字典中的值:
在這種情況下,您可以簡單地擴展使用第一次迭代創建第一個數據框的邏輯,然后在遍歷值並使用
.append<\/code>時繼續附加值,如下所示:
data1 = {'h1':df1,'h2':df2,'h3':df3}
counter = 0
for value in data1.values():
if counter == 0:
output = value
counter = 1
else:
output = output.append(value)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.