【发布时间】:2018-12-02 19:48:56
【问题描述】:
我有一个包含月份名称字符列的数据框,我需要将其转换为月份名称日期列。我试试这段代码
data1$month <- as.Date(as.character(data1$month), "%B")
但是所有的值都变成了NA。我做错了什么?
谢谢。
关于数据的更多信息
head(data1)
month year impressions clicks conversions cost revenue month_num
<chr> <dbl> <int> <int> <int> <dbl> <dbl> <dbl>
1 April 2018 18737558 107063 291 117505. 145745. 4
2 August 2018 23247068 126523 439 118631. 143217. 8
3 February 2018 20119465 117370 320 146965. 114594. 2
4 January 2018 23905450 148205 382 155756. 145513. 1
5 July 2018 11963956 92740 297 106249. 138354. 7
6 June 2018 6845841 52294 253 53205. 91740. 6
【问题讨论】:
-
您能否将
dput(head(data1$month))放入一个代码块中,以便我们查看您的内容?如果您确实只有一个月份名称,则不足以创建Date对象。您需要添加一个虚拟的日/年。 -
我添加了更多关于数据的信息,谢谢
-
试试
as.Date(sprintf("%04d-%02d-01", data1$year, data1$month_num));成为Date需要“一天”,所以选择第一个是一个老生常谈的习惯。