大家好,我需要你们的帮助.
我有两列A和B的df,它们都是带string values的列
例子:
df_1 = pd.DataFrame(data={
"A":['a','b','c'],
"B":['a x d','z y w','q m c'] #string values not a list
})
print(df_1)
#output
A B
0 a a x d
1 b z y w
2 c q m c
现在我要做的是在df_1中预先设置loc,以获得所有列B包含列A中字符串值的行.
在这个例子中,我想要的输出是第一行和第三行
A B
0 a a x d # 'a x d' contain value 'a'
2 c q m c # 'q m c' contain value 'c'
我try 了不同的loc条件,但得到了不可 destruct 的类型:"Series"错误:
df_1.loc[df_1["B"].str.contains(df_1["A"])] #TypeError: unhashable type: 'Series'
df_1.loc[df_1["A"] in df_1["B"]] #TypeError: unhashable type: 'Series'
由于df的大小,我真的不想使用for/while循环.
你知道我该怎么做吗?