Bru*_*llo 2 python dataframe pandas
假设我有以下两个数据框:
df = pd.DataFrame({'col1':['a','b', 'c'], 'col2': ['q', 'w', 'e']})
df1 = pd.DataFrame({'col1': ['c', 'b', 'b', 'r','a', 'l', 'c'], 'col2': ['e', 'w', 'q', 'u', 'q', 'w', 'q']})
print(df)
col1    col2
a   q
b   w
c   e
print(df1)
col1 col2
   c    e
   b    w
   b    q
   r    u
   a    q
   l    w
   c    q
我想找到 df1 中 df 中的所有对并在新列中返回,我的预期输出将是:
col1 col2   col3
   c    e   True
   b    w   True
   b    q  False
   r    u  False
   a    q   True
   l    w  False
   c    q  False
我知道可以通过创建键来连接列来完成,但我现在想是否有一种简洁的方法来做到这一点,例如:
df1.isin(df) #doesn't work
我们有merge与indicator
s=df1.merge(df,indicator=True,how='left')
s['col3']=s['_merge']=='both'
s
  col1 col2     _merge
0    c    e       both
1    b    w       both
2    b    q  left_only
3    r    u  left_only
4    a    q       both
5    l    w  left_only
6    c    q  left_only
| 归档时间: | 
 | 
| 查看次数: | 2888 次 | 
| 最近记录: |