【发布时间】:2019-01-25 13:43:08
【问题描述】:
所以,我有两个数据集(我的意思是数据框)如下 数据框 1:
name, age, id, acctno
abc, 23, 1001, 238238
dhd, 22, 2001, 299299
ddg, 30, 2920, 101010
ssd, 53, 1901, 238003
ggh, 52, 2221, 222222
eet, 50, 9920, 111111
(我们可以将其保存为 population1.csv)
数据框 2:
name, age, id, acctno
abc, 11, 1001, 238238
def, 55, 2001, 299299
xxy, 90, 2020, 101010
(我们可以将其保存为 population2.csv)
所以,我们可以如下读取数据
df1 = pd.read_csv('population1.csv')
df2 = pd.read_csv('population2.csv')
而且,我想得到以下结果
res = df1-df2
基于id和acctno的常用列。
我们可以看到基于id和acctno,
dataframe2 在 dataframe1 中。但是dataframe1还有更多
dataframe2 中不常见的记录。
基于一列对两个数据框进行子集是直接的, 但是想知道如何根据两个对两个数据帧进行子集化 列。
所以,结果应该如下所示
ssd, 53, 1901, 238003
ggh, 52, 2221, 222222
eet, 50, 9920, 111111
【问题讨论】:
-
我相信您在
df2中有错字。我认为第四行的id应该是2920
标签: python pandas dataframe subset