r - 使用 as.Date() 在 R 中迄今为止的字符,但给出的答案是一次又一次的相同日期
问题描述
我正在尝试将我的列命名为 Date18 从字符到日期,但我可以通过使用该函数得到的答案as.Date()
是非常不同的。此外,我有大量的价值观样本。
str(coo)
'data.frame': 7698 obs. of 2 variables:
$ Date18: chr "1/3/2018 9:06" "1/3/2018 10:14" "1/3/2018 10:19" "1/3/2018 10:30" ...
$ Amount: num 21 16.8 10.5 43.7 4.2 ...
coo$Date18=as.Date(coo$Date18)
str(coo)
'data.frame': 7698 obs. of 2 variables:
$ Date18: Date, format: "0001-03-20" "0001-03-20" ...
$ Amount: num 21 16.8 10.5 43.7 4.2 ...
您可以看到日期的格式发生了变化。如何转换日期但我的值不会改变?
解决方案
使用as.Date
,我们需要指定format
如果不是默认格式 ( "%Y-%m-%d"
)
as.Date(coo$Date18, "%m/%d/%Y %H:%M")
注意:这里似乎是一个月然后一天。如果是日然后月,请使用as.Date(coo$Date18, "%d/%m/%Y %H:%M")
. 此外,请记住,Y
如果年份是四个数字,例如 2001,则必须大写;如果年份是两个数字,例如 01,则必须小写。
推荐阅读
- apache-spark-sql - 使用 oozie 操作执行 spark sql 作业的问题
- javascript - 切片数组的单列
- c++ - Arduino字符串解析问题
- node.js - 如何使用 amp-list、amp-mustache、amp-form 和 amp-bind 实现自动建议?
- ios - 容器视图的 collectionVC 被父级的 tapGesture 识别器阻止
- php - PHP构建带有id的html表
- r - 如何根据 R 中定义的列中缺失值的数量返回行值的总和?
- docker - MSBuild webdeploy 包输出 zip 文件不可访问
- karate - Overwrite path already set in Background
- mysql - 在 mysql 查询中包含批发字段