【问题标题】:subsetting data (years) into set intervals in R将数据(年)子集到 R 中的设定间隔中
【发布时间】:2016-10-20 06:47:00
【问题描述】:

我想将我的数据分类为设定的间隔(按十年),这样我就可以为每十年的记录数创建一个频率表。下面是我的数据。您几乎可以忽略除最右边一列之外的所有内容,即年份。

我尝试过使用 cut 功能,但对我来说效果不佳。 dplyr 包中是否有我可以使用的功能?间隔将是 1910-1919、1920-1929 等等。

【问题讨论】:

  • 它不工作吗?可以标记为已解决吗?

标签: r subset


【解决方案1】:

下次请给出我们可以使用的数据示例:

df <- data.frame(1910:1952)

你可以用cut来做,你需要在之前定义中断:

breaks <- seq(from = 1910, to = 2100, by = 10)
df$cutpoint <- cut(df$X,breaks=breaks, right=FALSE)

查看help(cut) 了解有关标签的选项。

【讨论】:

    【解决方案2】:

    你试过ntile (x,n)吗?
    它将输入向量分成 n 个桶。

    或函数recode来自library(car)

    decade<-recode(year,"1910:1919='1';1920:1929='2';1930:1939='3';...")
    

    【讨论】:

      猜你喜欢
      • 2014-03-08
      • 1970-01-01
      • 2014-04-05
      • 2015-01-06
      • 2020-08-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多