【发布时间】:2019-09-17 14:42:03
【问题描述】:
我的数据集中有 1988 年到 2019 年的年份。
我这样做是为了将其用作因素(用于图表等):
DTA$ANNEE <- as.factor(DTA$ANNEE)
但是,我想在这个数据集上使用其他函数,比如:
max(DTA$ANNEE)
max(DTA$ANNEE-1) # By the way, is it the right syntax for : 2019-1 = 2018 ?
max(DTA$ANNEE-2)
max(DTA$ANNEE-3)
max(DTA$ANNEE-4)
max(DTA$ANNEE-5)
我尝试使用DTA$ANNEE <- as.numeric(DTA$ANNEE),但 2019 变成了“1”,2018 变成了“2”,2017 变成了“3”,等等。我不明白。
这样做的目的是获取我数据集的最后五年,并用它重命名其他表上的列。
年有特定的格式吗?
例如,这个功能会起作用吗?
droplevels(DTA[DTA$ANNEE %in% max(DTA$ANNEE-2), ])
谢谢
【问题讨论】:
-
那是因为它是一个因素。试试
DTA$ANNEE <- as.numeric(as.character(DTA$ANNEE)) -
当您需要年份作为因素时,使用
as.factor()可能比其他方式更好。大多数图表甚至不需要它作为一个因素,因为它无论如何都是序数。 -
哦,谢谢,好像没问题 :) 另外,我下一个目的的正确方法是 max((DTA$ANNEE)-1)。
标签: r