Python 如何让单词与之匹配';让我们用熊猫计数
我有两个数据帧,比如Python 如何让单词与之匹配';让我们用熊猫计数,python,pandas,list,dataframe,isin,Python,Pandas,List,Dataframe,Isin,我有两个数据帧,比如 set1 = ['a','b','c','d','e','f','g','h','i','j'] set2 = ['a','b','b','c','c','f','h','j','k'] df1 = pd.DataFrame(set1, columns=['name']) df2 = pd.DataFrame(set2, columns=['name']) 我想在没有forloop的情况下比较这两个数据帧,得到如下输出 df3 = ['a=1','b=2','c=2',
set1 = ['a','b','c','d','e','f','g','h','i','j']
set2 = ['a','b','b','c','c','f','h','j','k']
df1 = pd.DataFrame(set1, columns=['name'])
df2 = pd.DataFrame(set2, columns=['name'])
我想在没有forloop的情况下比较这两个数据帧,得到如下输出
df3 = ['a=1','b=2','c=2','f=1','h=1','j=1']
我可以用哪种方法获得这个输出?有什么例子吗。??
这里我只需要df2
中在df1
仅打印类似于df3
我还需要得到计数(这在熊猫身上不可能没问题,我只需要一个类似df3
的列表也可以
我使用了merge func,但它显示了内部、外部、左连接、右连接等方法,因此不知道哪种方法更适合这样做使用
pandas.DataFrame.merge
和值\u计数
:
df1.merge(df2, on="name")["name"].value_counts()
输出:
b 2
c 2
j 1
a 1
h 1
f 1
Name: name, dtype: int64
从itertools导入groupby
df1,df2=“”.join(df1),“.join(df2)
对于zip中的i,j(groupby(df1),groupby(df2)):
打印(ilen(列表(i)))
希望这有帮助
import pandas as pd
df1 = pd.DataFrame({'df1_col':['a','b','c','d','e','f','g','h','i','j']})
df2 = pd.DataFrame({'df2_col':['a','b','b','c','c','f','h','j','k']})
df2[df2['df2_col'].isin(df1['df1_col'])]['df2_col'].value_counts()
df1
和df2
是列表,而不是数据帧。您试图获取的df3
是什么?是的,兄弟,我刚刚删除了列名,我将更新它it@Sushanthout_1=df2[~df2['columne_1'].isin(df1['column_1'].unique())]这个我试过了,但没用