R中的字符串转换整数

Elz*_*ugi 46 r r-faq

我试图找到一个函数将整数转换为字符串,以便我可以使用它来启动Date对象.

> v = c(20081101)
> date <- as.Date(v, format("%Y%m%d"))
Run Code Online (Sandbox Code Playgroud)

charToDate(x)中的错误:字符串不是标准的明确格式

我找到了一个解决方案paste(),但我想知道进行转换的正确方法是什么.

> date <- as.Date(paste(v), format("%Y%m%d"))
> date
[1] "2008-11-01"
Run Code Online (Sandbox Code Playgroud)

Rei*_*son 53

as.character()将是一般方式,而不是paste()用于其副作用

> v <- 20081101
> date <- as.Date(as.character(v), format = "%Y%m%d")
> date
[1] "2008-11-01"
Run Code Online (Sandbox Code Playgroud)

(我认为这是一个简单的例子,如下所示:

v <- "20081101"

是不可能的?)


Viv*_*ivi 18

获得相同结果的另一种方法:

date <- strptime(v,format="%Y%m%d")
Run Code Online (Sandbox Code Playgroud)

  • 有趣.我没有意识到`strptime`会自动强制/处理数值...... (3认同)