如果我有一个数据帧并且想要删除任何行,其中一列中的值不是整数,我该怎么做?
另一种方法是,如果值不在0-2的范围内,则删除行,但由于我不知道如何做其中任何一个,我希望有些可能.
这是我尝试过的但是它不能确定原因:
@H_404_8@df = df[(df['entrytype'] != 0) | (df['entrytype'] !=1) | (df['entrytype'] != 2)].all(1)
解决方法:
我建议有两种方法:
@H_404_8@In [212]:
df = pd.DataFrame({'entrytype':[0,1,np.NaN, 'asdas',2]})
df
Out[212]:
entrytype
0 0
1 1
2 NaN
3 asdas
4 2
如果值的范围与您说的那样受限制,那么使用isin将是最快的方法:
@H_404_8@In [216]:
df[df['entrytype'].isin([0,1,2])]
Out[216]:
entrytype
0 0
1 1
4 2
否则我们可以转换为str然后调用.isdigit()
@H_404_8@In [215]:
df[df['entrytype'].apply(lambda x: str(x).isdigit())]
Out[215]:
entrytype
0 0
1 1
4 2
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。