我想过滤数据框并使用列表理解创建列表。到目前为止,我的尝试没有成功。
df = pd.DataFrame({
"A" : [1,2,3],
"B" : ["a_b_c_some_word", "de_f_some_word", "g_hi_some_word"]
})
lst = [i for i in df["A"] if word in df["B"]]
print(lst)
[]
我期待
[1]
作为这个例子的输出,但总是得到空列表?我希望有人能解释我在这里缺少的东西。
我想这就是你想要的:
lst = [i for i, j in zip(df['A'], df['B']) if word in j]
并行遍历两列,如果另一列中的相应值的条件为真,则返回一列的值。