【问题标题】:how to select rows of a dataframe whose value are the same as another dataframe in a certain column in R如何选择数据帧的行,其值与R中某一列中的另一个数据帧相同
【发布时间】:2021-10-18 16:00:30
【问题描述】:

假设我的 df1 和 df2 如下:
df1:

      [,1] [,2] [,3]
 [1,] "n"  "11" "13"
 [2,] "a"  "18" "14"
 [3,] "b"  "13" "10"

df2:

     [,1] [,2] [,3]
[1,] "n"  "11" "13"
[2,] "a"  "ll" "kk"
[3,] "b"  "jj" "ii"

我想要一个 df2 的 dubset,这样它只包含那些 df2 的行,这些行与第 1 列中的 df1 具有相同的值。

     [,1] [,2] [,3]
[1,] "a"  "ll" "kk"
[2,] "b"  "jj" "ii"

我想

df.2.sub <- df2[df2$CertainColumn == df1$Specific.column]

可以工作。但事实并非如此。你能帮我解决这个问题吗?

【问题讨论】:

标签: r dataframe matrix subset


【解决方案1】:

关闭但需要使用“%in%”操作符

df.2.sub <- df2[df2$CertainColumn %in% df1$Specific.column,]

【讨论】:

    【解决方案2】:

    它似乎是一个矩阵。因此,$ 不起作用。我们可以使用[ 来提取第一列

    df2[df2[,1] %in% df1[,1],]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-22
      • 2019-09-24
      • 2021-05-29
      • 1970-01-01
      • 1970-01-01
      • 2018-03-30
      相关资源
      最近更新 更多