[英]Dropping rows based on index and condition
我想根據行范圍刪除某些行:我覺得它看起來像下面這樣
df.drop(df.index[[0,1,2,3]])
這樣只會刪除我的前兩行,但當且僅當該行范圍為空白時,我才想刪除這些行。 所以
Name
Macy
June
Jackson
因此,當且僅當它們沒有數據時,我只想遍歷數據框並刪除該范圍內的行,因此我的新數據框將如下所示:
Name
Macy
June
Jackson
您不需要 drop 語句中的df.index
。 但是,如果您只想保留填充Name
列的行,則可以使用:
> df_filter = df [df.Name != '']
如果你真的想根據索引定位行,你可以使用
> df_filter = df.drop([0,2])
您可以使用df.ix
獲取例外項目,然后使用dropna()
方法刪除None
:
df.ix[indices].dropna()
演示:
In [48]: df
Out[48]:
name
0 None
1 Macy
2 June
3 None
4 Jackson
In [49]: df.ix[[0,1,2,3]].dropna()
Out[49]:
name
1 Macy
2 June
注意:如評論中所述,由於不推薦使用ix
方法,因此您可以使用df.loc()
代替。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.