![](/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.