![](/img/trans.png)
[英]Python: filter pandas dataframe to keep specified number of rows based on a column
[英]filter rows in pandas dataframe with specified interval
我有一個形狀為(104238,88)的數據框表。 我只想提取值為1或0的行(不是布爾值)
Dataframe_input
Index C1 C2 C3 C4.... C88
R1 200 0 20 40 1068
R2 0 0 0 0 1
R3 1 1 1 1 0
設置子集后,我希望提取R2,R3。 即整行中的所有元素為0或1
我試過了,
import pandas as pd
df = pd.read_csv('Dataframe.txt', sep='\t', index_col='Index')
df2 = df[[df.columns].all(axis=1) <2]
我得到錯誤,
AttributeError:“列表”對象沒有屬性“全部”
這是什么錯誤? 請幫忙。
提前致謝,
美聯社
print(df)
C1 C2 C3 C4 C88
0 200 0 20 40 1068
1 0 0 0 0 1
2 1 1 1 1 0
使用以下代碼僅選擇具有0和1的行
df2 = df.loc[df.apply(lambda x: x.isin([1,0])).all(axis=1)]
print(df2)
C1 C2 C3 C4 C88
1 0 0 0 0 1
2 1 1 1 1 0
可能與df.isin
df[df.isin([0,1]).all(1)]
http://pandas.pydata.org/pandas-docs/version/0.15.0/indexing.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.