R - 如何将空的 POSIXct 列添加到已存在的 data.frame/tibble 中?

标签 r dataframe posixct tidyverse

我可以使用 POSIXct 列初始化数据框,代码如下:

df <- data.frame(a=numeric(), b=character(), c=as.POSIXct(character()))

但是,如果我尝试将空的 POSIXct 列添加到已存在的 data.frame 或 tibble 中,则该列将转换为数字类型/类。

> df <- tibble("Index"=numeric(10))
> df[,"date"] <- as.POSIXct(character())
> df[,"date"] %>% pull %>% class()
[1] "numeric

有办法解决这个问题吗?

最佳答案

这对你有用吗(大多数人都按照 eipi10 在 his comment 中的建议进行操作)

library(tibble) # install.packages(c("dplyr"), dependencies = TRUE)
df <- tibble(a = 1:3, b = letters[a], c = as.POSIXct(NA))

df 
#> # A tibble: 3 x 3
#>       a     b      c
#>   <int> <chr> <dttm>
#> 1     1     a     NA
#> 2     2     b     NA
#> 3     3     c     NA

str(df)
#> Classes ‘tbl_df’, ‘tbl’ and 'data.frame':
#>    3 obs. of  3 variables:
#> $ a: int  1 2 3
#> $ b: chr  "a" "b" "c"
#> $ c: POSIXct, format: NA NA ...

或者也许

df <- tibble(a = numeric(), b = character(), c = as.POSIXct(NA))
str(df)
#> Classes ‘tbl_df’, ‘tbl’ and 'data.frame':
#>   0 obs. of  3 variables:
#> $ a: num 
#> $ b: chr 
#> $ c:Classes 'POSIXct', 'POSIXt'  num(0) 

关于R - 如何将空的 POSIXct 列添加到已存在的 data.frame/tibble 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46186315/

相关文章:

python - 覆盖 pandas KDE 和直方图时正确渲染 y 轴

r - 在 ggplot2 不同数据集中混合直方图和密度图

python - 根据条件多次过滤数据帧的最快方法

python - 绘制 Pandas 数据框列之间的关系

R 数据表中的 PosixCT 变量

R:应用函数中 as.POSIXct() 的最佳方法

R:我的数据集中的 as.POSIXct 时区和 scale_x_datetime 问题

r - Shiny 问题 - 跟踪多用户环境中的用户设置

r - 如何在后台运行 RTerm.exe(运行自定义 GUI)

r - 在几何密度脊线图中为平均值和分位数设置不同的颜色线