[英]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
如何將這些數據框中的值(具有相同的column
和row
索引)與逗號合並?
預期輸出如下:
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
,強制轉換為string
由astype
和groupby
通過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.