热线电话:13121318867

登录
2018-10-26 阅读量: 854
关于R的性能测试

一、测试目的

1.测试R读取数据时,何种格式何种读取方式效率更高,资源占用更少。

2.为用R处理百万级数据以下人购“器”提供一点儿参考

二、测试平台:

(一)硬件

电脑型号            戴尔 Inspiron5421 笔记本电脑

处理器              英特尔 第三代酷睿i5-3317U @ 1.70GHz 双核 超低电压处理器

显卡                NVIDIA GeForce GT 640M LE  ( 2 GB )

内存                4 X 2 GB ( 南亚易胜 DDR3 1600MHz )

主硬盘              三星 SSD850 EVO 120GB ( 120 GB / 固态硬盘 )

(二)软件

操作系统            Windows 10 Enterprise 64位 10.0.14393版本14393

R                   R version 3.3.3 64位(2017-03-06)

RStudio             Version 1.0.136

xlsx包              package version 0.5.7.

readxl包            package version 0.1.1.

readr包             R package version 1.0.0.

三、测试数据

100万行 X 35列

四、测试内容

(一)测试项目

主要测试读取各种格式文件和做logistic回归时1.CPU占用,2.内存占用,3.读取时间

xlsx、xls文件:1.readxl::read_excel(); 2.xlsx::read.xlsx()

csv(UTF-8和另一种)文件:1.read.csv,; 2.readr:read_csv()

txt(Unicode 和 文本)文件:1.read.table; 2.readr_table()

原文件位xlsx格式,其他由此Excel 2016另存为转换得到。

(二)测试方法

CPU占用和内存占用,通过观察任务管理器,读取时间,用秒表手动计时。

五、结果

100百万行 X 35列数据,以上各种文件的各种读取方式,读取成功并内容无问题的有:

1.xls文件用readxl::read_excel()读取;

2.CSV UTF-8文件用readr::read_csv()读取;3.

文本txt文件用内置函数read.table()读取;

读取速度最快,资源占用最少的为CSV UTF-8文件用readr::read_csv(),读取时间在10秒左右,另外两种要30秒。

logistic回归分析

100百万行,5因素,二分类logistic回归分析,CPU占用最高46%,内存基本不增加,耗时5秒。

六、结论

1.推荐将含有中文的数据文件格式转化为CSV UTF-8格式,用readr包read_csv()函数读取。

2.100万 X 35例级数据,8G内存基本够用,处理数据的瓶颈在CPU,由于R是单线程的,因此也可以说瓶颈在于单核的运算能力,本人CPU单核1.7GHz,直观感受有些慢。

用read_csv()读取数据的优势总结:1.读取速度快,资源占用少,2.显示进度条,不会进入假死状态,3.可以定义各列数据类型,character、factor、integer、double、date,同时建议读取时用col_type定义好,方便后面分析。

tip:建议原数据标题采用英文,中文下引用会存在问题。

0.0000
1
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子