如果在现有列中,则添加新列

syazwaansyazwaan 成员职位:3.新手
我有一个这样的数据集:

如果column_1中的数据以数字开始,以字母结束,并在新列中返回“完整”或“不完整”,我想创建一个新列。

预期的输出:

谢谢你!
标记:

最佳答案

  • BalazsBaranyBalazsBarany 管理员,版主,员工,RapidMiner认证分析师,RapidMiner认证专家职位:888独角兽
    解决方案接受
    这就跟你问声好!

    为此,您可以使用Generate Attributes。
    确定文本是否以数字开始并以字母结束是正则表达式的领域。这些在RapidMiner的不同地方都可以使用,甚至在Replace操作符中有一个很好的正则表达式编辑器。

    在Generate Attributes中,您将使用如果()而且匹配()功能。下面是你的用例示例:

    如果(匹配(column_1, " ^[0 - 9] +。+ a-zA-Z美元”),“完成”,“不完整”)

    regexp在开始时有点可怕,但解释起来很简单。

    ^字符串的开始
    [0-9]字符类:0到9之间的数字
    +前面至少一个元素(字符类)
    , +
    [a-zA-Z]字母(如果需要其他字符,请在Z后面输入)
    字符串的结束

    逻辑是这样的:如果column_1的值匹配正则表达式,则如果函数返回第二个参数(Complete),否则返回第三个参数。

    问候,
    Balazs

答案

  • Telcontar120Telcontar120 主持人,RapidMiner认证分析师,RapidMiner认证专家,会员职位:1635年独角兽
    如果您只是想为原始数据的第一个和最后一个字符保留单独的属性,您还可以使用Generate Copy操作符,然后使用带有PREFIX和SUFFIX函数的Generate Attributes(这可能会有帮助,这取决于您想对它做什么,或者这些代码是否具有某些意义)。
    布莱恩·T。
    Lindon合资企业
    乐鱼体育官方app数据科学咨询由认证的RapidMiner专家
    BalazsBarany
登录注册置评。