问题描述
我正在尝试在大型数据集中分隔“日期和时间”列,以便仅隔离时间部分。
该列的格式如下:
$ Start_Time <chr> "12/31/2015 05:35:00 PM","12/31/2015 05:37:00 PM","12/31/2015 05:38:00...
我运行以下代码行:
separate(Start_Time,into = c("Date","Time","Eh"))
我得到以下输出。
> Test <- Divvy_Trips %>%
+ separate(Start_Time,"Eh"))
Error: memory exhausted (limit reached?)
我的会话信息也在下面:
> sessionInfo()
R version 4.0.2 (2020-06-22)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 18362)
Matrix products: default
关于我可以为此做些什么的任何想法,或者由于我的数据集大约有2100万个观测值,因此我对使用R感到不满意。
谢谢!
解决方法
您可以尝试以下data.table
选项:
library(data.table)
library(splitstackshape)
setDT(Divvy_Trips)
#Using tstrsplit
Divvy_Trips[,c("Date","Time","Eh") := tstrsplit(type," ")]
#Using cSplit
result <- cSplit(Divvy_Trips,"Start_Time"," ")