[英]Pandas iteratively append row values from multiple DataFrame columns
[英]how to iteratively append multiple columns from one dataframe to another?
讓我們假設 2 個數據幀(浮點型),具有相同的索引/行數和動態列數,由某個函數生成。
df1 df2
0 avg 0 1 avg
0 1.1 1.1 0 2.1 2.4 2.25
1 1.2 1.2 1 2.2 2.5 2.35
2 1.3 1.3 2 2.3 2.6 2.45
我想從每個 df 中獲取除最后一列之外的所有列,並以迭代方式將它們附加到新的 df 中。
我試過以下
df_lst=[df1, df2]
total_df=pd.DataFrame()
for frame in df_lst:
total_df=pd.concat(total_df, frame.iloc[:, 0:-1])
但由於某種原因,new_df 附加了最后一列的 NaN 值
有人可以解釋為什么會這樣嗎? 我怎么能解決它?(我也嘗試過加入、追加、分配,但是 new_df 中的所有列都是空的)
所需的輸出看起來像
new_df
0 1.1 2.1 2.4
1 1.2 2.2 2.5
2 1.3 2.3 2.6
只需將軸添加到concat
:
df_list = [df1,df2]
pd.concat([d.iloc[:, :-1] for d in df_list], axis=1)
輸出:
0 0 1
0 1.1 2.1 2.4
1 1.2 2.2 2.5
2 1.3 2.3 2.6
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.