![](/img/trans.png)
[英]How to make nested list into rows and columns in a data frame in Python
[英]How to get rows containg empty list in a Data Frame Columns in Python
我有一个这样的数据框:
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 []
空列表转换为 False 作为布尔值。 使用~
将其转换为 True 是一个简单的技巧。 对我来说它很容易阅读并且运行速度非常快。 绝对比使用len()
快。
test[~test['B'].astype(bool)]
A B
0 a []
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.