mitbbs.com
  首页 -分类讨论区 - 学术学科 - 统计版 - 同主题阅读文章
  首页
  分类广告
分类讨论区
  移民专栏
新闻中心
  精华区
  未名博客
  俱乐部
  未名形象秀
  未名黄页
  未名交友
  未名人才
未名交友
[更多]
[更多]
同主题阅读:有技巧得用R才能发挥它的威力
[版面:统计][首篇作者:tninja] , 2013年01月28日12:14:09
[分页:1 ]
tninja
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 1 ]

发信人: tninja (K dash), 信区: Statistics
标  题: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Mon Jan 28 12:14:09 2013, 美东)

R在运行效率上是有很多坑,不小心就掉进去了。关于R的并行计算以及大数据操作可以
参考

http://cran.r-project.org/web/views/HighPerformanceComputing.ht

R是免费的,SAS是要付钱的。R是一种语言,SAS就是个tool。SAS总得有几个亮点,否
则谁肯花钱阿?

---------------------------

某种程度上说,R是给程序员用的,SAS是给统计师用的,客户不一样。

R有众多的第三方包,有最新的东西,这点SAS完全比不上,SAS就是个古董。

R和linux其他工具整合的很好。如果觉得它不够快,那么推荐配合其他工具一起使用。

1. 小数据直接用R
2. 中等规模数据用awk, python之类配合R
3. 大规模数据用hadoop cluster配合R streaming

在我的工作中,通常处理大规模数据,做aggregation的是其他语言,R是最后一步。

------------------------

既然知道R没有pass by reference,为什么还要传那么多大变量呢?用全局或者可以访
问的局部变量不就可以了么。

------------------------

现在R的势头很猛。去年的JSM上,出版商展出的书当中大约2/3都是R的。

--

※ 修改:·tninja 於 Jan 28 12:21:16 2013 修改本文·[FROM: 24.]
※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 24.]

 
Ballack5
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 2 ]

发信人: Ballack5 (I shall be your eyes!), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Mon Jan 28 12:28:10 2013, 美东)

Good point!
--

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 64.]

 
oloolo
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 3 ]

发信人: oloolo (似人非兽), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Mon Jan 28 13:30:20 2013, 美东)

借帖问如何高效读入大的CSV或者任意TXT文件
比如读入一个700多MB的CSV,在r里面很慢,即使是用如下方式先预置了每列的属性:

trainset<-read.csv("train_set.csv", nrows=1000)
colClasses<-sapply(trainset, class);
trainset<-read.csv("train_set.csv", sep=",", header=T,             
colClasses=colClasses)

仍然要花很长时间,差不都是SAS的30倍,SAS一分钟,R硬是花了30多分钟。
--
考试只有一个正确答案,答中了,就过关;答不上,就不及格。但是人生的道路有很多正确答案。尊重自己的选择。努力为之奋斗。

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 170.]

 
statcompute
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 4 ]

发信人: statcompute (statcompute), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Mon Jan 28 13:48:29 2013, 美东)

take a look at ff package


【 在 oloolo (似人非兽) 的大作中提到: 】
: 借帖问如何高效读入大的CSV或者任意TXT文件
: 比如读入一个700多MB的CSV,在r里面很慢,即使是用如下方式先预置了每列的属性:
: trainset<-read.csv("train_set.csv", nrows=1000)
: colClasses<-sapply(trainset, class);
: trainset<-read.csv("train_set.csv", sep=",", header=T,             
: colClasses=colClasses)
: 仍然要花很长时间,差不都是SAS的30倍,SAS一分钟,R硬是花了30多分钟。


--
发自Android MITBBS阅览器 7.5
--

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 70.]

 
oloolo
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 5 ]

发信人: oloolo (似人非兽), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Mon Jan 28 16:56:46 2013, 美东)

thanks, will study it.

now I found I can use SAVE(), LOAD() when I need to use the file a lot of
times in the future, shake off 50% more time comparing to read.csv(...,
colClass=colAttr), or using SCAN function

directly read ZIPPED CSV file observes no time saving so far, anyone got
luck?

【 在 statcompute (statcompute) 的大作中提到: 】
: take a look at ff package



--
考试只有一个正确答案,答中了,就过关;答不上,就不及格。但是人生的道路有很多正确答案。尊重自己的选择。努力为之奋斗。

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 170.]

 
rabbit1860
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 6 ]

发信人: rabbit1860 (rabbit1860), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Mon Jan 28 17:24:27 2013, 美东)

我用LAMMPI和R做并行,真心很简单的。
R还是很有前途的,毕竟是免费,很多人愿意写插件
--

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 131.]

 
oloolo
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 7 ]

发信人: oloolo (似人非兽), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Mon Jan 28 18:05:16 2013, 美东)

looks like ff package helps on solving the problem where the file is TOO
large to fit in memory, like the bigmemory package does, but it doesn't help
on efficiency here as it maps data into disk.

Am I missing anything here?


>
> library(ff)
>
> system.time(
+   dsnff<-read.csv.ffdf(file="c:\_data\MNISTtrain.csv")
+ )
   user  system elapsed
  22.44    9.30   42.17
>
> system.time(
+   dsn1<-read.csv(file="c:\_data\MNISTtrain.csv")
+ )
   user  system elapsed
  13.71    0.04   13.77
>
>
> t<-Sys.time()
>   dsn2<-read.csv(file="c:\_data\MNISTtrain.csv", header=T, nrow=100)
>   colAttrs<-sapply(dsn2, class)
>   dsn2<-read.csv(file="c:\_data\MNISTtrain.csv", header=T, colClasses=
colAttrs)
> Sys.time()-t
Time difference of 8.608 secs
>
>
>
> system.time(
+   save(dsn2, file="c:\_data\MNISTtrain.bin", compress=F)
+ )
   user  system elapsed
   3.01    0.39    4.22
>
> system.time(
+   load("c:\_data\MNISTtrain.bin")
+ )
   user  system elapsed
   3.37    0.03    3.40
>
>

【 在 statcompute (statcompute) 的大作中提到: 】
: take a look at ff package



--
考试只有一个正确答案,答中了,就过关;答不上,就不及格。但是人生的道路有很多正确答案。尊重自己的选择。努力为之奋斗。

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 170.]

 
statcompute
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 8 ]

发信人: statcompute (statcompute), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Mon Jan 28 19:17:10 2013, 美东)

是的


【 在 oloolo (似人非兽) 的大作中提到: 】
: looks like ff package helps on solving the problem where the file is TOO
: large to fit in memory, like the bigmemory package does, but it doesn't
help
:  on efficiency here as it maps data into disk.
: Am I missing anything here?
: >
: > library(ff)
: >
: > system.time(
: +   dsnff<-read.csv.ffdf(file="c:\_data\MNISTtrain.csv")
: + )
: ...................


--
发自Android MITBBS阅览器 7.5
--

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 70.]

 
james824
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 9 ]

发信人: james824 (马扎罗), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Mon Jan 28 20:40:50 2013, 美东)

mark一个

【 在 tninja (K dash) 的大作中提到: 】
: R在运行效率上是有很多坑,不小心就掉进去了。关于R的并行计算以及大数据操作可以
: 参考
: http://cran.r-project.org/web/views/HighPerformanceComputing.html
: R是免费的,SAS是要付钱的。R是一种语言,SAS就是个tool。SAS总得有几个亮点,否
: 则谁肯花钱阿?
: ---------------------------
: 某种程度上说,R是给程序员用的,SAS是给统计师用的,客户不一样。
: R有众多的第三方包,有最新的东西,这点SAS完全比不上,SAS就是个古董。
: R和linux其他工具整合的很好。如果觉得它不够快,那么推荐配合其他工具一起使用。
: 1. 小数据直接用R
: ...................



--
十亿人民十亿兵,国耻岂待儿孙平?


※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 67.]

 
critmass
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 10 ]

发信人: critmass (80), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Mon Jan 28 22:01:03 2013, 美东)

别费事了ff了,不支持mgcv,lmer,coda之类

700M要读30分钟。。。你为什么还没把它砸了
--

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 66.]

 
tninja
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 11 ]

发信人: tninja (K dash), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Mon Jan 28 23:00:05 2013, 美东)

read.csv不适合读很大的文件。

看看read.matrix

http://rss.acs.unt.edu/Rdoc/library/tseries/html/read.matrix.ht

印象里它用scan来读文件。

【 在 oloolo (似人非兽) 的大作中提到: 】
: 借帖问如何高效读入大的CSV或者任意TXT文件
: 比如读入一个700多MB的CSV,在r里面很慢,即使是用如下方式先预置了每列的属性:
: trainset<-read.csv("train_set.csv", nrows=1000)
: colClasses<-sapply(trainset, class);
: trainset<-read.csv("train_set.csv", sep=",", header=T,             
: colClasses=colClasses)
: 仍然要花很长时间,差不都是SAS的30倍,SAS一分钟,R硬是花了30多分钟。



--

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 24.]

 
oloolo
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 12 ]

发信人: oloolo (似人非兽), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Tue Jan 29 00:06:44 2013, 美东)

scan的问题是不能读入不同属性的列,比如文件混合了字符串和数值变量,单单是数值
矩阵还行,不过也不比预置了colClasses=的读表格函数快多少,我的经验是大约5--10
%左右

现在就是用SAS把数据处理完了,如果需要用到SAS里面没有的算法再port到R里搞

【 在 tninja (K dash) 的大作中提到: 】
: read.csv不适合读很大的文件。
: 看看read.matrix
: http://rss.acs.unt.edu/Rdoc/library/tseries/html/read.matrix.html
: 印象里它用scan来读文件。



--
考试只有一个正确答案,答中了,就过关;答不上,就不及格。但是人生的道路有很多正确答案。尊重自己的选择。努力为之奋斗。

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 108.]

 
totoluyue
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 13 ]

发信人: totoluyue (美丽是一分硬币), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Tue Jan 29 08:59:03 2013, 美东)


【 在 tninja (K dash) 的大作中提到: 】
: R在运行效率上是有很多坑,不小心就掉进去了。关于R的并行计算以及大数据操作可以
: 参考
: http://cran.r-project.org/web/views/HighPerformanceComputing.html
: R是免费的,SAS是要付钱的。R是一种语言,SAS就是个tool。SAS总得有几个亮点,否
: 则谁肯花钱阿?
: ---------------------------
: 某种程度上说,R是给程序员用的,SAS是给统计师用的,客户不一样。
: R有众多的第三方包,有最新的东西,这点SAS完全比不上,SAS就是个古董。
: R和linux其他工具整合的很好。如果觉得它不够快,那么推荐配合其他工具一起使用。
: 1. 小数据直接用R
: ...................

Try to use data.table package,
and in the new incoming release of 1.9.2, there will be a
new reading file function 'fr', it is at least 30 times faster
than read.csv

--

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 76.]

 
statcompute
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 14 ]

发信人: statcompute (statcompute), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Tue Jan 29 09:58:07 2013, 美东)

nice


【 在 totoluyue (美丽是一分硬币) 的大作中提到: 】
: Try to use data.table package,
: and in the new incoming release of 1.9.2, there will be a
: new reading file function 'fr', it is at least 30 times faster
: than read.csv


--
发自Android MITBBS阅览器 7.5
--

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 70.]

 
oloolo
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 15 ]

发信人: oloolo (似人非兽), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Tue Jan 29 13:45:44 2013, 美东)

no money
【 在 critmass (80) 的大作中提到: 】
: 别费事了ff了,不支持mgcv,lmer,coda之类
: 700M要读30分钟。。。你为什么还没把它砸了



--
考试只有一个正确答案,答中了,就过关;答不上,就不及格。但是人生的道路有很多正确答案。尊重自己的选择。努力为之奋斗。

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 170.]

 
xiaoshuai
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 16 ]

发信人: xiaoshuai (小帅), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Tue Feb 12 15:46:06 2013, 美东)

我现在用Rexcel,感觉不错。
--
自认为发了很多有思考价值的帖子,但是没人关注,没人讨论;倒是一些所谓的牛人,随便放个屁,就一堆人捧臭脚。现在人,素质低啊。

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 164.]

 
sir
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 17 ]

发信人: sir ( 郎), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Tue Feb 12 17:52:58 2013, 美东)

如果不是所有的data都要用的话,可以先load到sql里面,然后在R里面select
--

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 174.]

 
wwjjj
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 18 ]

发信人: wwjjj (wwjjj), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Wed Feb 13 19:55:22 2013, 美东)

mark, 学习ing
--

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 71.]

 
victory2010
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 19 ]

发信人: victory2010 (victory2010), 信区: Statistics
标  题: Re: 有技巧得用R才能发挥它的威力
发信站: BBS 未名空间站 (Sat Feb 16 01:10:17 2013, 美东)

Thanks for your points! 祝LZ新年顺心!
--

※ 来源:·WWW 未名空间站 海外: mitbbs.com 中国: mitbbs.cn·[FROM: 74.]

[分页:1 ]
[快速返回] [ 进入统计讨论区] [返回顶部]
回复文章
标题:
内 容:

未名交友
将您的链接放在这儿

友情链接


 

Site Map - Contact Us - Terms and Conditions - Privacy Policy

版权所有,未名空间(mitbbs.com),since 1996