小编bld*_*bba的帖子

为什么R对象比Stata/SPSS中的相同数据大得多?

我有调查数据SPSS,Stata~730 MB大小.~800MB如果我正在处理这些数据,那么这些程序中的每一个程序也会占用大约你期望的空间量().

我一直在尝试拿起R,所以试图加载这些数据R.无论我尝试什么方法(read.dtastata文件,freadcsv文件,read.spssspss文件),R对象(使用测量object.size())2.6 to 3.1 GB在大小之间.如果我将对象保存在一个R文件中,那就小于100 MB,但加载时它与之前的大小相同.

任何使用调查包分析数据的尝试,特别是如果我尝试和subset数据,都需要比等效命令更长的时间stata.

例如'hhpers',我的数据中有一个家庭大小变量'hh',按变量加权'hhwt',子集加权'htype'

R代码:

require(survey)
sv.design <- svydesign(ids =  ~0,data = hh, weights = hh$hhwt)
rm(hh)
system.time(svymean(~hhpers,sv.design[which
(sv.design$variables$htype=="rural"),]))
Run Code Online (Sandbox Code Playgroud)

将R使用的内存推高到6 GB并花费很长时间 - 用户系统已经过去 3.70 1.75 144.11

stata中的等效操作

svy: mean hhpers …
Run Code Online (Sandbox Code Playgroud)

memory r survey

13
推荐指数
1
解决办法
838
查看次数

标签 统计

memory ×1

r ×1

survey ×1