Pandas选择查询位于元组列中的行

use*_*059 6 python dataframe pandas

我有一个数据框,其中一列包含元组:

df = pd.DataFrame({'a':[1,2, 3], 'b':[(1,2), (3,4), (0,4)]})

   a       b
0  1  (1, 2)
1  2  (3, 4)
2  3  (0, 4)
Run Code Online (Sandbox Code Playgroud)

我想选择我提供的元素在元组中的行.

例如,返回4在元组中的行,期望结果为:

   a       b
1  2  (3, 4)
2  3  (0, 4)
Run Code Online (Sandbox Code Playgroud)

我试过了:

print(df[df['b'].isin([4])]
Run Code Online (Sandbox Code Playgroud)

但是这会返回一个空的数据帧:

Empty DataFrame
Columns: [a, b]
Index: []
Run Code Online (Sandbox Code Playgroud)

jez*_*ael 2

apply需要in

print(df[df['b'].apply(lambda x: 4 in x)])
   a       b
1  2  (3, 4)
2  3  (0, 4)
Run Code Online (Sandbox Code Playgroud)