pandas 新列计算 id 在其他数据框中的存在
pandas new column counting id's existence in other dataframe
这是我的初始数据框 dfA :
idA
data
1
row
2
data
3
data
数据帧 dfB
idC
idA
1
1
2
1
3
3
4
3
5
3
6
3
我正在尝试计算 dfB 中 dfA 的每个 id 存在,并像这样添加到新列中:
idA
data
count
1
row
2
2
data
0
3
data
4
请问我该怎么做
使用 groupby
然后 count
得到每个组 idA
中 idC
的计数。最后,map
计数 Series 到 df1
的 idA
列。
df1['count'] = df1['idA'].map(df2.groupby('idA')['idC'].count()).fillna(0).astype(int)
print(df1)
idA data count
0 1 row 2
1 2 data 0
2 3 data 4
这是我的初始数据框 dfA :
idA | data |
---|---|
1 | row |
2 | data |
3 | data |
数据帧 dfB
idC | idA |
---|---|
1 | 1 |
2 | 1 |
3 | 3 |
4 | 3 |
5 | 3 |
6 | 3 |
我正在尝试计算 dfB 中 dfA 的每个 id 存在,并像这样添加到新列中:
idA | data | count |
---|---|---|
1 | row | 2 |
2 | data | 0 |
3 | data | 4 |
请问我该怎么做
使用 groupby
然后 count
得到每个组 idA
中 idC
的计数。最后,map
计数 Series 到 df1
的 idA
列。
df1['count'] = df1['idA'].map(df2.groupby('idA')['idC'].count()).fillna(0).astype(int)
print(df1)
idA data count
0 1 row 2
1 2 data 0
2 3 data 4