首先,我有一个excel文件(或csv文件),我将其转换为一个数据帧(df
)。在
接下来,在第一列中有一个字符串的主列表,其中包含字母数字字符。在
然后,在随后的列中有字符串列表,这些字符串可以是相同长度(list1
)、较短(list2
)或更长(list3
)。在
我想count
(或sum
)与其他列表之间精确匹配的数量。在
# Assign spreadsheet filename to `file`
file = "list_match.xlsx"
# Load spreadsheet
import pandas as pd
df = pd.read_excel(file)
print (df)
master_list list1 list2 list3
abc abc abc stu
def xxx def zzz
ghi xxx yyy zzz
jkl xxx yyy zzz
mno1 xxx yz1 zzz
pqr xxx zzz
stu xxx zzz
vwx xxx zzz
yz1 xxx zzz
yz2 xx1 zzz
yz3 xx1 zzz
zzz
mno1
zzz
目标是创造这样的结果:
^{pr2}$结果说明:
我的问题与this question相似,只是数据被转置,并且有多个列表要比较,这可能需要循环。在
使用
numpy
广播有:
使用
^{pr2}$df.apply
和np.isin
:或
df.isin
:结果:
创建主列表的非空值列表并使用数据帧.isin在
相关问题 更多 >
编程相关推荐