簡體   English   中英

選擇2列或更多列時添加熊貓數據框

[英]Pandas dataframe addition on selecting 2 or more columns

當有兩個相同列的數據框時,如何選擇特定的列並添加數據框?

熊貓的數據幀如下

a_val = {'col1': [1, 2], 'col2': [3, 4], 'col3': [7, 8]}
b_val = {'col1': [1, 5, 2], 'col2': [3, 2, 4], 'col3': [7, 17, 33]}
a = pd.DataFrame(a_val)
b = pd.DataFrame(b_val)

如何制作結果數據框C (有關預期結果C,請參見下文)

例如我有一個數據框

一種

B數據幀為

乙

C數據框為

C

我認為您需要merge ,然后對最后一列求和:

c = pd.merge(a,b, on=['col1', 'col2'], suffixes=('','_'))
      .assign(col3=lambda x: x.col3 + x.col3_).drop('col3_', 1)

等同於:

c = pd.merge(a,b, on=['col1', 'col2'], suffixes=('','_'))
c.col3 = c.col3.add(c.col3_)
c = c.drop('col3_', 1)

print (c)
   col1  col2  col3
0     1     3    14
1     2     4    41

暫無
暫無

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

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