使用橙色中的特征构造函数从字符串中提取数字?

数据挖掘
2022-02-15 17:43:11

我想使用特征构造函数从一列字符串中提取数字。

 Input          Output
S.c 3224   ---> 3224
South      ---> 0
322523     ---> 322523
S-1c 4     ---> 14
-1.37      ---> 137

内部橙色 3.7.0 文档说对于连续变量,您只需在 Python 中构造一个表达式。 伟大的!

我在功能构造函数代码中找到了有关允许功能的信息

#Only expressions with no list,set,dict,generator comprehensions
#are accepted.
<...>
__ALLOWED = [
    "Ellipsis", "False", "None", "True", "abs", "all", "any", "acsii",
    "bin", "bool", "bytearray", "bytes", "chr", "complex", "dict",
    "divmod", "enumerate", "filter", "float", "format", "frozenset",
    "getattr", "hasattr", "hash", "hex", "id", "int", "iter", "len",
    "list", "map", "memoryview", "next", "object",
    "oct", "ord", "pow", "range", "repr", "reversed", "round",
    "set", "slice", "sorted", "str", "tuple", "type",
    "zip"
]

根据列表,我希望使用这样的表达式:
int(filter(str.isdigit, inputStringColumn) or 0)

...但这是一个“无效的表达”(没有进一步的反馈)

如何从字符串中提取数字?

1个回答

只是为了突出亚当的省时答案

int(''.join(filter(str.isdigit, "0"+str(inputColumn))))

在此处输入图像描述