Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将日期转换为R中的文本_R_List_Date_Type Conversion - Fatal编程技术网

将日期转换为R中的文本

将日期转换为R中的文本,r,list,date,type-conversion,R,List,Date,Type Conversion,我有以下带有日期(YYYY-MM-DD)的数据集: 我想将它们转换为: DD-MMM-YYYY,但月份为文本。例如,20180412应成为2018年4月12日 有没有关于如何进行的建议 M您需要首先将文本字符串解析为Date对象,然后根据您的喜好格式化这些Date对象,以获得不同的文本输出: R> library(anytime) ## one easy way to parse dates and times R> dates <- anydate(c("20180412

我有以下带有日期(YYYY-MM-DD)的数据集:

我想将它们转换为: DD-MMM-YYYY,但月份为文本。例如,
20180412
应成为
2018年4月12日

有没有关于如何进行的建议

M

您需要首先将文本字符串解析为
Date
对象,然后根据您的喜好格式化这些
Date
对象,以获得不同的文本输出:

R> library(anytime)   ## one easy way to parse dates and times
R> dates <- anydate(c("20180412", "20180424", "20180506", "20180518", "20180530",
+                    "20180611", "20180623", "20180705", "20180717", "20180729"))
R> dates
 [1] "2018-04-12" "2018-04-24" "2018-05-06" "2018-05-18" "2018-05-30"
 [6] "2018-06-11" "2018-06-23" "2018-07-05" "2018-07-17" "2018-07-29"
R> 
R> txtdates <- format(dates, "%d%b%Y")
R> txtdates
 [1] "12Apr2018" "24Apr2018" "06May2018" "18May2018" "30May2018"
 [6] "11Jun2018" "23Jun2018" "05Jul2018" "17Jul2018" "29Jul2018"
R> 
R>library(随时)##一种解析日期和时间的简单方法
R> 日期
[1] "2018-04-12" "2018-04-24" "2018-05-06" "2018-05-18" "2018-05-30"
[6] "2018-06-11" "2018-06-23" "2018-07-05" "2018-07-17" "2018-07-29"
R>
R> txtdates txtdates
[1] “2018年4月12日”“2018年4月24日”“2018年5月6日”“2018年5月18日”“2018年5月30日”
[6] “2018年6月11日”“2018年6月23日”“2018年7月5日”“2018年7月17日”“2018年7月29日”
R>

您可以使用
as.Date()
format()
函数:

dts <- c("20180412", "20180424", "20180506", "20180518", "20180530", 
         "20180611", "20180623")

format(as.Date(dts, format = "%Y%m%d"), "%d%b%Y")

dts您可以尝试以下方法:

# print today's date
today <- Sys.Date()
format(today, format="%B %d %Y") "June 20 2007"
#打印今天的日期

今天只需使用
as.POSIXct
as.format

dates <- c("20180412", "20180424", "20180506")
format(as.POSIXct(dates, format="%Y%m%d"),format="%d%b%y")

检查出
格式
strtime
dates <- c("20180412", "20180424", "20180506")
format(as.POSIXct(dates, format="%Y%m%d"),format="%d%b%y")
[1] "12Apr18" "24Apr18" "06May18"