在熊猫中的数据框中查找非数字行?

在熊猫中的数据框中查找非数字行?,第1张

在熊猫中的数据框中查找非数字行?

您可以

np.isreal
用来检查每个元素的类型(applymap将一个函数应用于Dataframe中的每个元素):

In [11]: df.applymap(np.isreal)Out[11]:          a     bitema      True  Trueb      True  Truec      True  Trued     False  Truee      True  True

如果该行中的所有均为True,则它们均为数字:

In [12]: df.applymap(np.isreal).all(1)Out[12]:itema        Trueb        Truec        Trued       Falsee        Truedtype: bool

因此,要获取路由的subDataframe,(请注意:上面的否定〜会找到至少具有一个流氓非数字字符的那些):

In [13]: df[~df.applymap(np.isreal).all(1)]Out[13]:        a    bitemd     bad  0.4

您还可以找到可以使用argmin的
第一个
罪犯的位置:

In [14]: np.argmin(df.applymap(np.isreal).all(1))Out[14]: 'd'

正如@CTZhu指出的那样,检查它是int还是float的实例可能会稍快一些(np.isreal会有一些额外的开销):

df.applymap(lambda x: isinstance(x, (int, float)))


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5666237.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存