【问题标题】:New data frame with conditional values from another data frame R [duplicate]具有来自另一个数据框 R 的条件值的新数据框 [重复]
【发布时间】:2018-09-30 22:50:10
【问题描述】:

我有一个包含 3 列的数据框

   a b c
P1 z 1 22
P2 z 2 18
P3 x 1 3
P4 z 1 16
P5 x 2 6
P6 z 1 12
P7 x 1 23

我想创建一个新数据框,其中只有“c”列中的值满足“a”列中有“z”和“b”列中有“1”+“x”的条件在“a”列和“b”列中的“2”。

之后新的数据框应该是这样的:

   a b c
P1 z 1 22
P4 z 1 16
P5 x 2 6
P6 z 1 12

首先想到的是使用subset()。但我不知道怎么做。感谢您的帮助。

【问题讨论】:

    标签: r


    【解决方案1】:

    使用subset 重现您的预期输出:

    subset(df, (a == "z" & b == 1) | (a == "x" & b == 2));
    #   a b  c
    #P1 z 1 22
    #P4 z 1 16
    #P5 x 2  6
    #P6 z 1 12
    

    或者使用dplyr 方法使用filter

    library(dplyr);
    filter(df, (a == "z" & b == 1) | (a == "x" & b == 2))
    

    样本数据

    df <- read.table(text = 
        "   a b c
    P1 z 1 22
    P2 z 2 18
    P3 x 1 3
    P4 z 1 16
    P5 x 2 6
    P6 z 1 12
    P7 x 1 23", header = T)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-18
      • 1970-01-01
      • 2017-07-05
      • 2018-04-13
      • 2019-10-14
      • 2021-08-22
      相关资源
      最近更新 更多