【发布时间】:2013-01-06 10:56:12
【问题描述】:
我有一个名为 EPL2011_12 的数据集。我想通过按日期对原始数据集进行子集来制作新的数据集。日期位于名为 Date 的列中。日期采用 DD-MM-YY 格式。
我试过了
EPL2011_12FirstHalf <- subset(EPL2011_12, Date > 13-01-12)
和
EPL2011_12FirstHalf <- subset(EPL2011_12, Date > "13-01-12")
但每次都会收到此错误消息。
Warning message: In Ops.factor(Date, 13- 1 - 12) : > not meaningful for factors
我猜这意味着 R 将其视为文本而不是数字,为什么它不起作用?
【问题讨论】:
-
这意味着您的 Date 列被作为一个因素读入(大概是在使用
read.table或一些类似的函数时)。您需要使用例如转换它as.Date. -
不要忘记
as.character(),例如使用as.Date(as.character(X), "%d-%m-%y")。 -
@DirkEddelbuettel 没有
as.Date.factor方法,还是我误解了它的作用......? -
有趣。那一定是新的。过去我经常被
as.Date(factorvar)咬,factorvar成为它的水平......