【问题标题】:R subsetting a Data Frame excluding certain values from ColumnR子集数据框从列中排除某些值
【发布时间】:2018-01-15 10:24:49
【问题描述】:

我有一个数据框,其中某些值以(SP1)(SP2) 结尾,以及其他不以(SP1)(SP2) 结尾的值。 我想要完成的是创建一个新的数据框,其中仅包含不以(SP1)(SP2) 结尾的值

我可以对包含(SP1)(SP2) 的值进行子集化,如下所示:

Loc.Z.End = subset(location.simple, grepl("(SP1)|(SP2)", location.simple$Location_Name))

我认为添加 ! 运算符可以达到以下目的,但事实并非如此!

Loc.Z.End = subset(location.simple, [!grepl("(SP1)|(SP2)", location.simple$Location_Name)])

但这并不能解决问题!我做错了什么?

这是数据的一个例子

Location_Name City AMEM01 London BANY01 Leeds HSBC Dubai (SP1) Dubai Leeds(SP2) Leeds

感谢您的帮助!

【问题讨论】:

    标签: r regex dplyr


    【解决方案1】:

    采用grepl 逻辑表达式的参数是subset 并根据?subset

    subset - 指示要保留的元素或行的逻辑表达式: 缺失值被视为假。

    我们不需要任何[]

    subset(location.simple, !grepl("(SP1)|(SP2)", location.simple$Location_Name))
    #  Location_Name   City
    #1        AMEM01 London
    #2        BANY01  Leeds
    

    【讨论】:

    • 一如既往,感谢您的指导!我以为我出于某种原因需要[],甚至没想过不使用它们!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-08
    • 2021-12-18
    • 2022-01-13
    • 2021-12-24
    • 1970-01-01
    相关资源
    最近更新 更多