簡體   English   中英

如何從兩個熊貓數據框中加入像元值?

[英]How can I join the cell values from two pandas dataframe?

如何從兩個熊貓數據框中加入像元值?

df1 is:

         F1   F2   M1   M2
    pos
    23  1.0  0.0  1.0  1.0
    24  1.0  1.0  1.5  1.0
    28  1.0  0.0  0.5  0.0


df2 is:

         F1   F2   M1   M2
    pos
    23  0.0  1.0  0.5  0.0
    24  1.0  1.0  1.5  1.0
    28  0.0  1.0  1.0  1.0

如何將這些數據框中的值(具有相同的columnrow索引)與逗號合並?

預期輸出如下:

         F1       F2       M1       M2
    pos
    23  1.0,0.0  0.0,1.0  1.0,0.5  1.0,0.0
    24  1.0,1.0  1.0,1.0  1.5,1.5  1.0,1.0
same for other lines...
The value of df1 should be place before comma and df2 after that.

謝謝,

您可以使用concat兩個DataFrames ,強制轉換為stringastypegroupby通過index與聚合agg功能join

df = pd.concat([df1,df2]).astype(str).groupby(level=0).agg(','.join)
df.index.name = df1.index.name
print (df)
          F1       F2       M1       M2
pos                                    
23   1.0,0.0  0.0,1.0  1.0,0.5  1.0,0.0
24   1.0,1.0  1.0,1.0  1.5,1.5  1.0,1.0
28   1.0,0.0  0.0,1.0  0.5,1.0  0.0,1.0

您可以將它們歸納為兩個帶有“ string”元素的DF:

In [324]: d1.astype(str).add(',').add(d2.astype(str))
Out[324]:
          F1       F2       M1       M2
pos
23   1.0,0.0  0.0,1.0  1.0,0.5  1.0,0.0
24   1.0,1.0  1.0,1.0  1.5,1.5  1.0,1.0
28   1.0,0.0  0.0,1.0  0.5,1.0  0.0,1.0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM