我有两个数据帧,称为第1和第2。 1st有索引 - ' customer'。第二名也有索引 - '客户'有一些相似和一些不同的价值观。 第1列有列' P'和' Q'。第2列还有名称为“P'”的列。和' Q'。 我想加入两个数据帧,如果第一个索引值与第二个索引值匹配,则添加相应的值' P'和' Q'从B到' P'和' Q'第1 返回dataframe 1st
示例 第一个数据框是:
customer P Q
A 0.5 4
B 0.4 6
C 0.3 5
D 0.7 7
第二个数据框是:
customer P Q
B 4 20
D 5 21
E 6 22
F 7 23
输出应为:
Customer P Q
A 0.5 4
B 4.4 26 (6+20)
C 0.3 5
D 5.7 28 (7+21)
答案 0 :(得分:1)
np.random.seed([3,1415])
A = pd.DataFrame(np.random.rand(3, 2),
pd.Index(list('abc'),name='customer'),
list('PQ'))
B = pd.DataFrame(np.random.rand(3, 2),
pd.Index(list('bcd'),name='customer'),
list('PQ'))
A
B
(A + B).dropna()
您要添加到A
的IIUC,B
的值B
有一个共同的索引,否则只需要A
的值。
A.add(B, fill_value=0).reindex_like(A)