在数据处理量较大的时候,最为头痛的就是数据的读写、运算效率。
data.table处理大数据集(数据文件达到以1G为单位)时相对于R语言的基本函数在数据读写、处理速度都不能与之相比可以对比基础函数、dplyr包函数做同样运算处理的时间。可自行对比数据处理函数(filter、group_by、mutate、summarise),数据量在上100万左右,稍微复杂的计算差距就特别明显。
但对于复杂的数据如何还尚未试验。
data.table包除了处理速度快外另一个有点是代码简洁。
1、fread函数(列出常用的参数)可以对比read.csv、read.xlsx
fread(input, sep, header stringsAsFactors, encoding)
input 需要读取的数据;
sep 列的分隔符;
header 第一行是否为列名;
stringsASFactors 是否转化字符串为因子;
encoding 默认"unknown",在读取数据乱码的时候可以变更,以在软件中显示正常,而通常也是文本和网页数据会出现编码的问题;
2、fwrite函数(列出常用的参数)
fwrite(data, file , append ,sep, row.names, col.names)
data 你需要写出/保存的数据;
file 保存到本地的文件名,;
append 如果TRUE,在你之前保存到本地的原文件后面添加新数据;
sep