我需要分析一个大数据集。为此,我需要将一个字符变量分成一千多列。这个变量的结构是number$number$number$ and so on for a thousand numbers
。
我的数据存储在SQLite数据库中。我使用RSQLite在R中导入了它。我尝试使用dplyr将此列拆分为多个列:
#d is a data.table with my data
d2=d %>% separate(column_to_separate, paste0("S",c(1:number_of_final_columns)))
它工作,但需要永远。如何更快地拆分此列(在R中或使用SQLite)?
2条答案
按热度按时间slhcrj9b1#
您可以使用
tidyfast
包(see here),它利用了data.table
。在这个测试中,它大约快三倍:创建于2023-02-03使用reprex v2.0.2
zzzyeukh2#
您可以尝试按原样编写文件,然后尝试使用fread加载它,这通常相当快。
编辑:我测试了速度,它似乎比tidyfast的dt_separate快,但这取决于你的数据集的大小。