【问题标题】:How to remove all rows based on a particular column in R?如何根据 R 中的特定列删除所有行?
【发布时间】:2014-02-07 05:18:39
【问题描述】:

我有一个csv文件

标题在哪里

Id,Name,State

数据.csv

Id,Name,State
23,Fred,California
56,Sam,Texas
78,Renee,Washington
56,Walter,California

期望的输出

Id,Name,State
56,Sam,Texas
78,Renee,Washington

我已将信息阅读为

 record <- read.csv("Data.csv",header=TRUE)
 State <- record$State

我想删除所有包含“California”作为“State”值的行。

R 新手。感谢任何帮助。

【问题讨论】:

    标签: r csv apply


    【解决方案1】:

    如果您将 csv 加载到名为 df 的数据框中:

    df[df$State != "California", ]
    

    您可能想查看这张参考卡:http://cran.r-project.org/doc/contrib/Short-refcard.pdf

    编辑

    关于您的更新:

    record <- read.table(sep=",", header=T, text="
    Id,Name,State
    23,Fred,California
    56,Sam,Texas
    78,Renee,Washington
    56,Walter,California")
    State <- record$State
    
    record[record$State != "California", ]
    #   Id  Name      State
    # 2 56   Sam      Texas
    # 3 78 Renee Washington
    
    State[State != "California"]
    # [1] Texas      Washington
    # Levels: California Texas Washington
    
    record[State != "California", ]
    #   Id  Name      State
    # 2 56   Sam      Texas
    # 3 78 Renee Washington
    

    【讨论】:

    • 我已经修改了问题,上述方法无效,谢谢,感谢任何进一步的帮助。
    • 我在帖子里放了一些例子
    猜你喜欢
    • 2019-10-17
    • 2019-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-27
    • 1970-01-01
    • 2022-01-01
    相关资源
    最近更新 更多