【问题标题】:How to subset a vector by intervals of 10?如何以 10 的间隔对向量进行子集化?
【发布时间】:2014-10-21 16:56:31
【问题描述】:

这是从 94 到 195 的数字列表:

l = c(94:195)

如何根据l 范围内的十个间隔生成一个新向量?这就是我所追求的:

100 110 120 130 140 150 160 170 180 190

【问题讨论】:

    标签: r vector subset


    【解决方案1】:

    你可以试试这个简单的方法

    > l[l %% 10 == 0]
     [1] 100 110 120 130 140 150 160 170 180 190
    

    【讨论】:

      【解决方案2】:

      seq 的另一个解决方案:

      seq(10*ceiling(min(l)/10), 10*floor(max(l)/10) , by=10)
      

      l 不是示例的有序整数序列时,它工作得很好:

      l <- runif(10, 94, 195)
      l
      seq(10*ceiling(min(l)/10), 10*floor(max(l)/10) , by=10)
      

      【讨论】:

        猜你喜欢
        • 2015-04-13
        • 2021-07-16
        • 2017-12-13
        • 1970-01-01
        • 1970-01-01
        • 2017-03-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多