python - 如何在 Python 的数据框列中获取包含空列表的行

标签 python list pandas dataframe

我有一个这样的数据框:

    test = pd.DataFrame(columns=['A','B'])
    test.loc[0,'A'] = 'a'
    test.loc[0,'B'] = []
    test.loc[1,'A'] = 'b'
    test.loc[1,'B'] = ['a','b']

我想获取另一个数据框,其中包含“B”列包含空列表时的行。这样做的 Pythonic 方式是什么?

    A    B
0   a   []

非常感谢

最佳答案

由于空列表将被解释为以矢量化方式处理的集合,我看不到任何测试它的方法,只能深入到 apply 调用:

test.B.apply(lambda c: c==[])
Out[71]: 
0     True
1    False
Name: B, dtype: bool

test[test.B.apply(lambda c: c==[])]
Out[72]: 
   A   B
0  a  []

关于python - 如何在 Python 的数据框列中获取包含空列表的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42143116/

相关文章:

python - 遍历 pandas 中的行以检查条件

python - 如何匹配多列并查找pandas中的特定列值?

matplotlib - Pandas 图直方图数据框索引

python - 当 Python 列表中有多余字符时进行匹配

python - 在scrapy python中的一行csv文件中每列排列一个项目

python:如果列表中没有以 'p=' 开头的元素,则返回 False

r - 按行获取数据帧列表的平均值

java - 如何比较列表和字符串数组(Java)?

python - 重新索引 Pandas 数据框多索引的子级别

python - 将 pandas 数据框从一个 jupyter 笔记本复制到另一个的最佳方法是什么