gpt4 book ai didi

python - python 2.7 中的正则表达式,用于识别数据框中列中的任何非数字符号

转载 作者:太空宇宙 更新时间:2023-11-03 11:49:55 25 4
gpt4 key购买 nike

我正在用 python 清理数据。数据框中的某些列应该是数字。但是这些列中有一些行包含可以是 ?、/或任何其他非数字符号的字符串。如果所选列的值不是数字,我想创建一个等于 1 的 bool 列,否则为 0。我是 python 的新手,我不确定非值的正则表达式是什么。我需要提到的一件事是,因为 c 列包含非数值,所以它被读取为对象,而不是字符串或数字。样本输入

      a     b   c   d
1 10 20 30 40
2 10/20 30 ? 50

此输入被读取为 dataframe ,称为 df。理想输出

      a     b   c   d    e
1 10 20 30 40 0
2 10/20 30 ? 50 1

最佳答案

我假设该列是 str,而不是 int。您可以使用正则表达式,但如果您只对字符串使用 isdigit() 方法,它会更快并且更容易理解。

例如:

>>> '1233456'.isdigit()
True
>>> '1234aaaa'.isdigit()
False
>>> '1234@'.isdigit()
False
>>> '123,456,789'.isdigit()
False

此方法返回一个 bool 值 (True/False),然后您可以将其插入到所需的列中。

关于python - python 2.7 中的正则表达式,用于识别数据框中列中的任何非数字符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30327595/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com