python – 在pandas dataframe的列子集中查找具有非零值的行

前端之家收集整理的这篇文章主要介绍了python – 在pandas dataframe的列子集中查找具有非零值的行前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个包含4列字符串的数据框,其他的是整数.现在我需要找出那些至少有一列是非零值(或> 0)的数据行.
manwra,sahAyaH,T7,T
manwra,akriti,T5,1,K 
awma,prabrtih,B6,S

我的输出应该是

manwra,S

我尝试了以下方法来获得答案.字符串值以列0,2和-1(最后一列)为单位.

KT[KT.ix[:,3:-2] != 0]

我作为输出收到的是

NaN,NaNNaN,NaN,NaN
NaN,NaN

如何获得所需的输出

解决方法

以下是使用 select_dtypes()方法的替代解决方案:
In [41]: df[(df.select_dtypes(include=['number']) != 0).any(1)]
Out[41]:
        0          1   2  3  4  5  6  7
1  manwra     akriti  T5  0  0  1  0  K
2    awma   prabrtih  B6  0  1  1  0  S

说明:

In [42]: df.select_dtypes(include=['number']) != 0
Out[42]:
       3      4      5      6
0  False  False  False  False
1  False  False   True  False
2  False   True   True  False

In [43]: (df.select_dtypes(include=['number']) != 0).any(1)
Out[43]:
0    False
1     True
2     True
dtype: bool

猜你在找的Python相关文章