2015-11-13 72 views
0

我有一个包含日期的列的csv数据集。将数据集导入R后,我们需要根据某个日期范围对数据集进行子集分类。“CharToDate(x)中的错误”

app1110 <- read.csv("file_11102015.csv") 
app1110$appcom_date2 <- app1110$APPLICATION..COMPLETED..DATE 

然后我们尝试1)

app1110$appcom_date2 <- format(as.POSIXct(app1110$appcom_date2, format= "%m/%d/%Y"), format="%m/%d/%Y") 
subset(app1110, as.Date(appcom_date2 < "12/30/2013")) 

错误消息:

错误as.Date.default(appcom_date2 < “2013年12月30日”):不知道 如何转换'appcom_date2 <“12/30/2013”​​'到类“日期”

那么我怎么能基于日期范围子集数据?

+1

'appcom_date2 <“12/30/2013”​​'返回一个逻辑向量。在逻辑向量上调用'as.Date'没有任何意义。 –

回答

1

没有看到你的数据,我怀疑你需要改变这一点:

as.Date(appcom_date2 < "12/30/2013") 

这样:

appcom_date2 < as.Date("12/30/2013", "%M/%d/%Y") 

或者更好的是:

appcom_date2 < as.Date("2013-12-30")

关键点因为你需要强制字符串("12/30/2013")到Date对象,然后然后进行比较。

0

谢谢,问题是比较字符到日期类型。这个固定:

app1110 $ appcom_date2 < - as.Date(app1110 $ appcom_date2, 格式= “%米/%d /%Y”)的子集(app1110,appcom_date2 < as.Date(“2013- 12-31 “) & appcom_date2> as.Date(” 2013年6月1" 日))

得到了另一个问题:当子集,我使用appcom_date2变量作为标准来设置周期。 我该如何指定从该变量中排除所有NA值?

+1

'&!is.na(MyDateVariable)' – Jthorpe