可以使用pandas库的DataFrame的apply()方法结合lambda函数来实现按照列中类型为列表的值来筛选数据帧。
以下是一个示例代码:
import pandas as pd
# 创建一个包含列表类型的数据帧
df = pd.DataFrame({'col1': [[1, 2, 3], [4, 5], [6]], 'col2': ['a', 'b', 'c']})
# 使用apply()方法和lambda函数筛选数据帧
filtered_df = df[df['col1'].apply(lambda x: isinstance(x, list))]
print(filtered_df)
输出结果为:
col1 col2
0 [1, 2, 3] a
1 [4, 5] b
在示例中,我们首先创建了一个包含列表类型的数据帧df。然后使用apply()方法和lambda函数来筛选出col1列中类型为列表的行,并将结果赋值给filtered_df。最后打印filtered_df即可得到筛选后的数据帧。