R和Python

这两个语言一起混编用能完成什么事情?我比较清楚R能做什么,和R混编为什么推荐Python,用c的话我相对比较熟悉,可以改用C混编吗?……另外,能推荐学习Python的入门和数据处理计算的书吗?目前只有Head first python这本书……(大概3个问题,望解答)……

我python很熟悉(10几年),R刚学。通常来讲用python调用R应该更方便些。或者是两者用文件做交换。大部分情况下python都是调用其它的语言更方便。这是因为python是一种胶水语言,可以很方便的调用其它语言。特别是C和C++的。

如果要通过文件交换R与C混编也是可以的。 当然直接调用更可以。只是感觉成本太高。不合算。你都用C语言了。为什么还贪图R的方便,直接自己手写工,或者是调用C的库就可以了。

python入门很容易,精通不太容易。不过比basic, java, c#都要简单吧。 数据处理方面,学一学numpy就可以,它自带教程。 另外python本身最好的教程 还是python自已的帮助文档。

如果还不懂就去看代码。即使没有学过python的人,看python代码也不吃力。(如果有其它语言基础的话)。

head first这本书挺不错的。我看过一些head first java的。 至于python的书太多了。不过我自己看过的都不满意 。学好语言还是要靠自己练习,还有就是看别人的代码。

R是好东西。我最近在试着做一个分布式的计算环境 。 R也可以做分词,文本处理也是可以的。 并不需要python帮助做什么。除非你象我这样,python很熟悉,而R不熟悉。追问

那可以顺便推荐一下,python的集成编程环境吗?我打算安装winpython……

追答

集成环境看需要。我常用的有sublime text2, idle, vi, eric4, wingide, eclipse。这些都挺好用的。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-08
英文好的话推荐官方文档的tutorial部分,否则就推荐Python核心编程.
第2个回答  2013-11-08
py完全可以和c混编,而且是最好的组合,py数据处理的有以下几本《NumPy攻略》《利用Python进行数据分析》《统计思维:程序员数学之概率统计》如果你是机器学习或者数据挖掘方向此类的py中文书也有很多,这几本都有中文版卖,可以先下载pdf版看看再决定
第3个回答  推荐于2017-09-13
Python与R的区别和联系
1、区别
Python与R的区别是显而易见的,因为R是针对统计的,python是给程序员设计的。2012年R是学术界的主流,但是现在Python正在慢慢取代R在学术界的地位。
Python与R相比速度要快。Python可以直接处理上G的数据;R不行,R分析数据时需要先通过数据库把大数据转化为小数据(通过groupby)才能交给R做分析,因此R不可能直接分析行为详单,只能分析统计结果。所以有人说:Python=R+SQL/Hive,并不是没有道理的。
Python的一个最明显的优势在于其胶水语言的特性,很多书里也都会提到这一点,一些底层用C写的算法封装在Python包里后性能非常高效(Python的数据挖掘包Orange canve 中的决策树分析50万用户10秒出结果,用R几个小时也出不来,8G内存全部占满)。但是,凡事都不绝对,如果R矢量化编程做得好的话(有点小难度),会使R的速度和程序的长度都有显著性提升。
R的优势在于有包罗万象的统计函数可以调用,特别是在时间序列分析方面,无论是经典还是前沿的方法都有相应的包直接使用。相比之下,Python之前在这方面贫乏不少。但是,现在Python有了pandas。pandas提供了一组标准的时间序列处理工具和数据算法。因此,可以高效处理非常大的时间序列,轻松地进行切片/切块、聚合、对定期/不定期的时间序列进行重采样等。近年来,由于Python有不断改良的库(主要是pandas),使其成为数据处理任务的一大替代方案。
2、联系
通过R和Python只共享文件,Python把源数据处理干净,生成格式化的文件放在预定的目录下,做个定时器让R去读文件,最终输出统计结果和图表。
让Python直接调用R的函数,R是开源项目,有rpy2之类的模块,可以实现使用python读取R的对象、调用R的方法以及Python与R数据结构转换等。
相似回答