假设我有一个像这样的pandas dframe:
Name Nos
Jack [4,2,3,12]
Adam [5,6,4,2,3]
John [1,3,4]
什么是最快的方法(简写代码),当输入为
[4,2,3]
时,结果应为包含杰克和亚当行的dframe?我尝试在哪里使用,但我不太能找到正确的解决方案。 最佳答案
如果需要将值[4, 2, 3]
一起连续出现在列表中,则可以使用以下代码:
input_list = [4, 2, 3]
def func(df, l):
return df[df['Nos'].astype(str).str.contains(str(l)[1:-1])]
print(func(df, input_list))
如果只想将值放在其中,请使用:
input_list = [4, 2, 3]
def func(df, l):
return df[df['Nos'].astype(str).str.contains('&'.join(l))]
print(func(df, input_list))
关于python - 在pandas dframe中选择行,其中给定的输入列表是dframe列中列表的子集,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59871960/