python vs R如何抉择?

m
miked
楼主 (北美华人网)
请问大家,python vs R,你选择哪一个?
另外,如果是python,请推荐一款好用的IDE。就是能一边写代码,改代码,挑错,一边出结果。
s
sandyud
python
pycharm
g
godblessyou
脑子都不用想,肯定python ,
大喜妞
Python. 既然你做这个选择,估计你是刚开始做数据的新人。推荐你使用好上手的Jupyter Notebook, 先别管debug 那些功能。我觉的新人最重要是短平快的上手。 而且刚开始学,那些bug 肉眼可见。
p
plmoer
R适合做一些数据分析,画的图表比较好看。 Python 是通用性编程语言,应用范围比较广,库全,特别是做数据处理和机器学习方面。如果是新手,推荐VS Code
a
anw
请问大家,python vs R,你选择哪一个?
另外,如果是python,请推荐一款好用的IDE。就是能一边写代码,改代码,挑错,一边出结果。
miked 发表于 2022-10-07 13:03

当然选蟒蛇。如果你不准备转马公,凑合着用猪皮特笔记本,否则用虚拟工作室编程。
t
tidewater
请问大家,python vs R,你选择哪一个?
另外,如果是python,请推荐一款好用的IDE。就是能一边写代码,改代码,挑错,一边出结果。
miked 发表于 2022-10-07 13:03

如果要泡统计学美女教授,选 R 。
如果实在没有编程思维 procedural thinking ,选 R。
t
tidewater
R适合做一些数据分析,画的图表比较好看。 Python 是通用性编程语言,应用范围比较广,库全,特别是做数据处理和机器学习方面。如果是新手,推荐VS Code
plmoer 发表于 2022-10-07 13:27

现在大家都用 VSCode + Conda ,不限于新手。
VSCode 里直接可以跑朱庇特笔记本
t
ted.hanks
学过一点R, 感觉除了dataframe 和 ggplot以外,一无是处。尤其是io 和 regex 支持非常糟糕。
m
manduka
如果要泡统计学美女教授,选 R 。
如果实在没有编程思维 procedural thinking ,选 R。
tidewater 发表于 2022-10-07 13:33

都是大媽,哪有美女
d
destiny2008
Python 远比R强大 选一个的话haishi还是选P
t
texaslife
必须是python啊
g
guoguosusu
Python 🐍
s
spindrifter
看到R的代码就头疼。为了自己的身心健康,用python吧
t
tidewater
学过一点R, 感觉除了dataframe 和 ggplot以外,一无是处。尤其是io 和 regex 支持非常糟糕。
ted.hanks 发表于 2022-10-07 13:37

我觉得就算 data frame ,Python 里的 Panda Express 不是更好?
t
tidewater
都是大媽,哪有美女
manduka 发表于 2022-10-07 13:52

哥们您要求太高了。至少相对纯数理物,都是美女了。
m
macancan
毫不犹豫选Python,并且系统学,要是科研学科相关的R语言够用了。
m
miked
R适合做一些数据分析,画的图表比较好看。 Python 是通用性编程语言,应用范围比较广,库全,特别是做数据处理和机器学习方面。如果是新手,推荐VS Code
plmoer 发表于 2022-10-07 13:27

谢谢大家! 大家都是一致推荐用python。
我用python比较慢。用R则是非常快。
这两个语言切换起来,很麻烦。因为python用了class。而R都是function。
我个人更喜欢R,因为它不仅仅画图方便,更重要,它的统计学包比python强大许多。 但是我又喜欢python的sklearn包。 所以,这是很难的抉择。


星月花草
回复 1楼miked的帖子
python VS code
x
xinfo
谢谢大家! 大家都是一致推荐用python。
我用python比较慢。用R则是非常快。
这两个语言切换起来,很麻烦。因为python用了class。而R都是function。
我个人更喜欢R,因为它不仅仅画图方便,更重要,它的统计学包比python强大许多。 但是我又喜欢python的sklearn包。 所以,这是很难的抉择。



miked 发表于 2022-10-07 14:46


谁说python 必须用class?
b
benw
谢谢大家! 大家都是一致推荐用python。
我用python比较慢。用R则是非常快。
这两个语言切换起来,很麻烦。因为python用了class。而R都是function。
我个人更喜欢R,因为它不仅仅画图方便,更重要,它的统计学包比python强大许多。 但是我又喜欢python的sklearn包。 所以,这是很难的抉择。



miked 发表于 2022-10-07 14:46

两个都用,感觉还是R干净,清爽。Python的package简直就是hell,各种库,各种版本,有时相互矛盾,R基本没用这样的问题。R markdown,blogdown,bookdown非常好,比Python类似的功能还强,直接写书,写文章,做Slides都没用问题,文本,公式,图表,代码(不限于R)一体化,非常高效。
另外,你需要拓宽自己对R的了解,R当然也支持类,functional programming,只不过一般人不懂罢了。要用tidyverse的东西,非常先进合理的设计理念,速度也块。现在新的R package如果不是tidyverse compatible的都不好意思给人打招呼。凡是不知道,不熟练使用 tidyverse + magrittr 的基本还没资格评价R。Python似乎还没有magrittr这么爽的东西。 搞学术的选R好,R的package基本都是学术界的人搞得,很多都经过Peer review,质量比较高,出的图也清新可人,简洁大方,接受度比较高。Python的package比较混乱,水平参差不齐,好的很好,差的基本就是随便某个人练手做的。
说到底,这些基本是glue language,底下用的库大部分都是C,C++等高效率语言写的,这些库都会被包装成R以及Python的package,所以底层没什么区别的。
b
bubikeqi
好帖学习
b
babybaby
R最大的问题难道不是memory?
f
felali9
我也新手。以前也学过R。还是觉得python更快好学。资源多。
m
miked
两个都用,感觉还是R干净,清爽。Python的package简直就是hell,各种库,各种版本,有时相互矛盾,R基本没用这样的问题。R markdown,blogdown,bookdown非常好,比Python类似的功能还强,直接写书,写文章,做Slides都没用问题,文本,公式,图表,代码(不限于R)一体化,非常高效。
另外,你需要拓宽自己对R的了解,R当然也支持类,functional programming,只不过一般人不懂罢了。要用tidyverse的东西,非常先进合理的设计理念,速度也块。现在新的R package如果不是tidyverse compatible的都不好意思给人打招呼。凡是不知道,不熟练使用 tidyverse + magrittr 的基本还没资格评价R。Python似乎还没有magrittr这么爽的东西。 搞学术的选R好,R的package基本都是学术界的人搞得,很多都经过Peer review,质量比较高,出的图也清新可人,简洁大方,接受度比较高。Python的package比较混乱,水平参差不齐,好的很好,差的基本就是随便某个人练手做的。
说到底,这些基本是glue language,底下用的库大部分都是C,C++等高效率语言写的,这些库都会被包装成R以及Python的package,所以底层没什么区别的。

benw 发表于 2022-10-07 15:18

谢谢!
大喜妞
谢谢大家! 大家都是一致推荐用python。
我用python比较慢。用R则是非常快。
这两个语言切换起来,很麻烦。因为python用了class。而R都是function。
我个人更喜欢R,因为它不仅仅画图方便,更重要,它的统计学包比python强大许多。 但是我又喜欢python的sklearn包。 所以,这是很难的抉择。



miked 发表于 2022-10-07 14:46

Python 也有function,一点问题没有。
Python 确实没有tidyverse 这些,做数据清洁的code 看上去也不那么干净漂亮。但是Python和各种软件啊环境啊更兼容。你以后如果要把整个machine learning的过程分成micro services, 串成pipeline,再放到云上去自动化,那python就有压倒性优势了。
我是读书的时候一直用R,工作后改Python,改起来蛮快,顺手了就好。
b
bunnyshe
喜欢R,清爽,package management也更好,python感觉乱七八糟一大堆。做research, R足够。如果你是搞CS或者将来做software developer, python更容易整合。
h
hellolady
mark一下
m
mangmang
做统计的R或者SAS比较通用吧?python 感觉是ML或者偏向软件编程的
J
Julyten
VI is op's best friend.
l
lonesun
回复 1楼miked的帖子
Python Jupyter Note book 之后大的project用vs coder
P
PrettyMaJia
Mark一下,学习
t
tidewater
做统计的R或者SAS比较通用吧?python 感觉是ML或者偏向软件编程的
mangmang 发表于 2022-10-07 16:00

R 基本不能做 Computer Vision 吧 ,,, inevitable
t
tidewater
两个都用,感觉还是R干净,清爽。Python的package简直就是hell,各种库,各种版本,有时相互矛盾,R基本没用这样的问题。R markdown,blogdown,bookdown非常好,比Python类似的功能还强,直接写书,写文章,做Slides都没用问题,文本,公式,图表,代码(不限于R)一体化,非常高效。
另外,你需要拓宽自己对R的了解,R当然也支持类,functional programming,只不过一般人不懂罢了。要用tidyverse的东西,非常先进合理的设计理念,速度也块。现在新的R package如果不是tidyverse compatible的都不好意思给人打招呼。凡是不知道,不熟练使用 tidyverse + magrittr 的基本还没资格评价R。Python似乎还没有magrittr这么爽的东西。 搞学术的选R好,R的package基本都是学术界的人搞得,很多都经过Peer review,质量比较高,出的图也清新可人,简洁大方,接受度比较高。Python的package比较混乱,水平参差不齐,好的很好,差的基本就是随便某个人练手做的。
说到底,这些基本是glue language,底下用的库大部分都是C,C++等高效率语言写的,这些库都会被包装成R以及Python的package,所以底层没什么区别的。

benw 发表于 2022-10-07 15:18

"只不过一般人不懂罢了"
凸显学术界的牛叉!!
其实按那句话,R 已经死了 ,,, 先例就是 Pascal/Ada vs C/C++,一般人真的不懂 LOL ,,, 剩下的是时间问题而已,prolong the inevitable ,,,
q
qianqiuxue
python 用spyder R就是Rstudio 后者更偏向data 先学一个,再搞另一个,都很容易
j
junuylia
学过一点R, 感觉除了dataframe 和 ggplot以外,一无是处。尤其是io 和 regex 支持非常糟糕。
ted.hanks 发表于 2022-10-07 13:37

只知皮毛,建议不要武断评价
j
junuylia
我觉得就算 data frame ,Python 里的 Panda Express 不是更好?
tidewater 发表于 2022-10-07 14:12

panda express难道不是个美式中餐店吗?啥时候成python的tool了?
_
_用户名_
刚开始学哪个都行。熟练了之后,建议都学,两个语言,侧重不同,各有优势。用多了,互相切换也不难。
一些偏统计的应用,R package 更reliable,Python类似功能的package,仔细看源码,有不少错误。
Python 更容易scale up,搞成 product level code。IDE VS code,pycharm 都行。
西
西门烤翅
工作就学好python吧,毕业后没用过R,VScode就很好了
L
LMML2009
现在data analyst 用 R 还是Python?
t
trystone
请问大家,python vs R,你选择哪一个?
另外,如果是python,请推荐一款好用的IDE。就是能一边写代码,改代码,挑错,一边出结果。
miked 发表于 2022-10-07 13:03

十年前问这问题还要琢磨琢磨,现在无脑python吧,library很全,从ai到stats,从量子算法到高精制图,应有尽有,r慢慢落后了。
o
oqo
我觉得就算 data frame ,Python 里的 Panda Express 不是更好?
tidewater 发表于 2022-10-07 14:12

Pandas就是抄R的data frame的 抄了个二半吊子 用下data.table就知道Pandas几斤几两了
t
trystone
panda express难道不是个美式中餐店吗?啥时候成python的tool了?
junuylia 发表于 2022-10-07 20:05

没看出他的玩笑?
J
J.X
回复 21楼benw的帖子
python可以干的事情可比R多多了,许多专业软件都有Python API,学一门语言可以具备很多能力。如果做数据分析,估计都得学习
o
oqo
刚开始学哪个都行。熟练了之后,建议都学,两个语言,侧重不同,各有优势。用多了,互相切换也不难。
一些偏统计的应用,R package 更reliable,Python类似功能的package,仔细看源码,有不少错误。
Python 更容易scale up,搞成 product level code。IDE VS code,pycharm 都行。

_用户名_ 发表于 2022-10-07 20:15

Python一些统计package里面有大坑 因为写package的也不是特别懂
o
oqo
现在data analyst 用 R 还是Python?
LMML2009 发表于 2022-10-07 23:41

都用 各有优势
t
trystone
"只不过一般人不懂罢了"
凸显学术界的牛叉!!
其实按那句话,R 已经死了 ,,, 先例就是 Pascal/Ada vs C/C++,一般人真的不懂 LOL ,,, 剩下的是时间问题而已,prolong the inevitable ,,,
tidewater 发表于 2022-10-07 17:29

r的确有些经典的东西,但再经典的祖师爷也会被实用主义的二愣子甩后面的
t
tidewater
Pandas就是抄R的data frame的 抄了个二半吊子 用下data.table就知道Pandas几斤几两了
oqo 发表于 2022-10-08 00:13

Pandas 建在 Numpy 上。
Numpy 是 同时还是 Scipy 以及 Tensor 的底层。
虽然我不懂 R,但整个 Machine Learning 和 Computer Vision 的包,都不用 R 当主力,应该是有一定的构架原因的。
c
cannie
两个都用,感觉还是R干净,清爽。Python的package简直就是hell,各种库,各种版本,有时相互矛盾,R基本没用这样的问题。R markdown,blogdown,bookdown非常好,比Python类似的功能还强,直接写书,写文章,做Slides都没用问题,文本,公式,图表,代码(不限于R)一体化,非常高效。
另外,你需要拓宽自己对R的了解,R当然也支持类,functional programming,只不过一般人不懂罢了。要用tidyverse的东西,非常先进合理的设计理念,速度也块。现在新的R package如果不是tidyverse compatible的都不好意思给人打招呼。凡是不知道,不熟练使用 tidyverse + magrittr 的基本还没资格评价R。Python似乎还没有magrittr这么爽的东西。 搞学术的选R好,R的package基本都是学术界的人搞得,很多都经过Peer review,质量比较高,出的图也清新可人,简洁大方,接受度比较高。Python的package比较混乱,水平参差不齐,好的很好,差的基本就是随便某个人练手做的。
说到底,这些基本是glue language,底下用的库大部分都是C,C++等高效率语言写的,这些库都会被包装成R以及Python的package,所以底层没什么区别的。

benw 发表于 2022-10-07 15:18

python最有用的data science package都是R移植过去的, 还是R直接用起来方便
w
wfmlover
你自己用着玩的,哪个都无所谓 但你要工作要面试的话, 如果你想进Tech公司,难道答案不是明摆的么,难不成你用R去刷题?

t
tidewater
python最有用的data science package都是R移植过去的, 还是R直接用起来方便
cannie 发表于 2022-10-08 00:31

R 的 dataframe 能不能转成 protobuf?
当然本质上这是 DataOps 的事,,,
t
tidewater
你自己用着玩的,哪个都无所谓 但你要工作要面试的话, 如果你想进Tech公司,难道答案不是明摆的么,难不成你用R去刷题?


wfmlover 发表于 2022-10-08 00:45

用 Ada 去刷题,估计可以灭掉 99.99% 的编程面试马工。
被逼成了怨妇
学完python再学R,有点像初中生学小学数学。学完R再学python,有点像小学生学初中数学。大多数工作要求R, SAS, python 都会。
i
icyhui
如果是做统计更多,我估计R更合适,如果搞DS/ML这类的,python首选,vscode或者pycharm,spider都可以
t
toopooh
python. 比r好太多了