【发布时间】:2016-09-02 01:27:49
【问题描述】:
我有一个从 sqlite 数据库表创建的 R 数据框。该数据有许多现在是字符列的日期时间列。我想将它们批量转换为数据框中的日期列。
我可以像这样一次写一列:
loan$Maturity <- as.Date(gsub(', 12:00:00 AM', '', loan$Maturity), "%m/%d/%y")
我可以对所有作为因子的列进行大规模更新。作为日期值的每一列都包含
i <- sapply(loan, is.factor)
loan[i] <- lapply(loan[i], as.character)
如何获取包含文本“, 12:00:00 AM”的每一列,然后使用函数 as.Date() 更改所有字段以将所有字符值转换为日期值。
【问题讨论】:
-
如果一个列包含
, 12:00:00 AM的单个实例,或者每一行都必须包含它,那么它是否匹配? -
为什么不在整个数据框上使用
lapply,并有条件地转换你想要的列? -
不是每一列都有匹配的文本或有值的行,有些是不适用的
-
这并不能真正回答问题。列中是否存在 single 匹配项表明该列应被视为日期?
-
是的,单个匹配意味着该列是日期列。对不起,我没有理解你的问题