【问题标题】:In R how can I select every nth column and every nth row within those columns?在 R 中,如何选择这些列中的每 n 列和每 n 行?
【发布时间】:2020-03-11 23:40:34
【问题描述】:

我有一个大型数据集,我想选择该列中的每 n 列和每 n 行。

在这个例子中,如果我想要每第二列和每第二行,我会得到 9 和 11 第一和 6 和 8 第二。

x <- data.frame("x1" = c(1:4), "y1" = c(8:11), "x2" = c(14:17), "y2" = c(5:8))
x

【问题讨论】:

    标签: r dplyr


    【解决方案1】:

    这行得通:

    x[seq_len(nrow(x)) %% 2 == 0, seq_len(ncol(x)) %% 2 == 0]
    #>   y1 y2
    #> 2  9  6
    #> 4 11  8
    

    【讨论】:

      【解决方案2】:

      我们可以使用向量回收:

      n <- 2
      inds <- c(rep(FALSE, n - 1), TRUE)
      x[inds, inds]
      
      #  y1 y2
      #2  9  6
      #4 11  8
      

      【讨论】:

        猜你喜欢
        • 2017-02-18
        • 2018-01-11
        • 2017-11-02
        • 2011-05-27
        • 2020-11-14
        • 1970-01-01
        • 1970-01-01
        • 2021-10-20
        • 1970-01-01
        相关资源
        最近更新 更多