由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - pandas 作者:Apache Arrow and the "10 Things I Hate About pandas"
相关主题
有没有觉得scipy很稀烂的?How to use multi-core to speed Python program
Java码农转data science行业,有没有一起的 (转载)请推荐好的c++下的matrix库
data.table谁用过? 有那么神吗?lapack如何求解XA=B
有人上Spark用python API的么C++ 做线性代数,方便使用的库?
求救:2个dense matrix的乘法gnu c++ 自带的库能解矩阵方程吗?
Matrix calculation in C++C++里用Blas/Lapack的问题 (转载)
do you use blas/lapack?搞矩阵的竟然没有人提BLAS
Linux下运行lapack和blas的问题为啥matlab一直用列优先存储来存储array?
相关话题的讨论汇总
话题: pandas话题: python话题: br话题: hate话题: apache
进入Programming版参与讨论
1 (共1页)
d******c
发帖数: 2407
1
总的感觉是,这个作者数学很强,编程很一般,但是站在风口上了,pandas变得很火,
其实是太多人涌进DS,R比较难学,python容易上手,于是pandas起来了。
就我的经验,exploratory data analysis, python系列全面弱于R系列。当然ML,训练
模型是另一回事。
R的data.table比pandas强太多了,pandas作者说了,内存需要是数据量的5-10倍。我
用data.table远没有这么夸张。
http://wesmckinney.com/blog/apache-arrow-pandas-internals/
d******c
发帖数: 2407
2
pandas rule of thumb: have 5 to 10 times as much RAM as the size of your
dataset
There are additional, hidden memory killers in the project, like the way
that we use Python objects (like strings) for many internal details, so it's
not unusual to see a dataset that is 5GB on disk take up 20GB or more in
memory. It's an overall bad situation for large datasets.
The 10 (really 11) things are (paraphrasing my own words):
Internals too far from "the metal"
No support for memory-mapped datasets
Poor performance in database and file ingest / export
Warty missing data support
Lack of transparency into memory use, RAM management
Weak support for categorical data
Complex groupby operations awkward and slow
Appending data to a DataFrame tedious and very costly
Limited, non-extensible type metadata
Eager evaluation model, no query planning
"Slow", limited multicore algorithms for large datasets
t*******c
发帖数: 288
3
5 to 10 times? It sucks.

's

【在 d******c 的大作中提到】
: pandas rule of thumb: have 5 to 10 times as much RAM as the size of your
: dataset
: There are additional, hidden memory killers in the project, like the way
: that we use Python objects (like strings) for many internal details, so it's
: not unusual to see a dataset that is 5GB on disk take up 20GB or more in
: memory. It's an overall bad situation for large datasets.
: The 10 (really 11) things are (paraphrasing my own words):
: Internals too far from "the metal"
: No support for memory-mapped datasets
: Poor performance in database and file ingest / export

l******n
发帖数: 9344
4
我以前说过pandas用起来方便,但是效率低下,速度很慢,用numpy
pandas就是numpy的一个wrapper

【在 d******c 的大作中提到】
: 总的感觉是,这个作者数学很强,编程很一般,但是站在风口上了,pandas变得很火,
: 其实是太多人涌进DS,R比较难学,python容易上手,于是pandas起来了。
: 就我的经验,exploratory data analysis, python系列全面弱于R系列。当然ML,训练
: 模型是另一回事。
: R的data.table比pandas强太多了,pandas作者说了,内存需要是数据量的5-10倍。我
: 用data.table远没有这么夸张。
: http://wesmckinney.com/blog/apache-arrow-pandas-internals/

h******e
发帖数: 666
5
我以前用pandas也是觉得慢,有啥其他好的推荐吗?不会要用最基本的吧
w********m
发帖数: 1137
6
pandas的设计令人发指。
更糟糕的是,一些人以为这就是Python。
希望它的应用范围只有哪些搞金融的人。
k*****u
发帖数: 1688
7
为什么大家这么痛恨pandas?
我觉得它提供的几个功能还是能显著让python更方便啊,pivot,groupby,merge
数据很大的时候我一般split然后multiprocessing再合并
基本还是能保证工作都能按时完成
不过我也好几年不怎么用R了,不知道R现在是不是发展很快
主要觉得把每个都学一点不如把一个认真学好点
然后python的生态系统还是比R强壮的多
所以渐渐就主要用python了
p***o
发帖数: 1252
8
5到10倍这个锅其实不该pandas来背,python的代码如果不使劲优化就是要耗这么多内
存。

【在 t*******c 的大作中提到】
: 5 to 10 times? It sucks.
:
: 's

g****t
发帖数: 31659
9
有很多不可预测的错误吧。添数字,type什么的。
overall来讲,pandas是质量非常高的软件了。但是长程效应不行。
用半年就受不了了。numpy更可靠。
一句话:pandas如果出了bug,我无法确定自己多长时间内搞定。
所以个人经验:不要用于产品。

【在 k*****u 的大作中提到】
: 为什么大家这么痛恨pandas?
: 我觉得它提供的几个功能还是能显著让python更方便啊,pivot,groupby,merge
: 数据很大的时候我一般split然后multiprocessing再合并
: 基本还是能保证工作都能按时完成
: 不过我也好几年不怎么用R了,不知道R现在是不是发展很快
: 主要觉得把每个都学一点不如把一个认真学好点
: 然后python的生态系统还是比R强壮的多
: 所以渐渐就主要用python了

n******g
发帖数: 2201
10
金玉良言 我不做产品
用熊猫让上司爽了 过后就忘 管他什么产品
[在 guvest (我爱你老婆Anna) 的大作中提到:]
:有很多不可预测的错误吧。添数字,type什么的。
:overall来讲,pandas是质量非常高的软件了。但是长程效应不行。
:用半年就受不了了。numpy更可靠。
:一句话:pandas如果出了bug,我无法确定自己多长时间内搞定。
:所以个人经验:不要用于产品。
相关主题
Matrix calculation in C++How to use multi-core to speed Python program
do you use blas/lapack?请推荐好的c++下的matrix库
Linux下运行lapack和blas的问题lapack如何求解XA=B
进入Programming版参与讨论
n******g
发帖数: 2201
11
熊猫的设计 让广大大妈sql程序员也能学会 所以获得了巨大成功
如同当年微软让普通人使用电脑 就占领了市场
[在 longtian (有人的地方,就有江湖) 的大作中提到:]
:我以前说过pandas用起来方便,但是效率低下,速度很慢,用numpy
:pandas就是numpy的一个wrapper
w********l
发帖数: 87
12
没错,一个小bug要搞很久,这个库确实很糟糕,但是又没有替代品

【在 g****t 的大作中提到】
: 有很多不可预测的错误吧。添数字,type什么的。
: overall来讲,pandas是质量非常高的软件了。但是长程效应不行。
: 用半年就受不了了。numpy更可靠。
: 一句话:pandas如果出了bug,我无法确定自己多长时间内搞定。
: 所以个人经验:不要用于产品。

w********l
发帖数: 87
13
pandas最糟糕的是inconsistent unexpected behavior,不少设计和python data
model不一致,最典型的就是loc, iloc,难用的令人发指
m******r
发帖数: 1033
14
所以我当时选择学R.
R的学习周期真的很长,也出乎我预料。
w********l
发帖数: 87
15
我也学过R,我这辈子都不想再用R。对于有编程经历的人,R简直就是火星语

【在 m******r 的大作中提到】
: 所以我当时选择学R.
: R的学习周期真的很长,也出乎我预料。

d******a
发帖数: 32122
16
你没用过Stata。。。


: 我也学过R,我这辈子都不想再用R。对于有编程经历的人,R简直就是火星语



【在 w********l 的大作中提到】
: 我也学过R,我这辈子都不想再用R。对于有编程经历的人,R简直就是火星语
m******r
发帖数: 1033
17
你这比方其实还真对了。 我老不断追根溯源直到最近才搞清楚,为啥R长这个样子。R
这个怪胎,原来起源于函数编程, 函数编程是和'图灵机'对等的一套体系。 比如在图
灵机体系下,有变量存在; 在函数编程里,只有常量,没有变量。 但是又有好多人,
出于好心,写出无数的package, 让大家用。
总之,想学R, 就要拿出学一门火星语的勇气。好比你见到一位火星人,如果他说话和
地球人不一样,那没什么奇怪的; 如果和地球人相同, 那反倒奇怪了。

【在 w********l 的大作中提到】
: 我也学过R,我这辈子都不想再用R。对于有编程经历的人,R简直就是火星语
N*****r
发帖数: 94
18

R
我对函数编程没意见, 我爱死scheme,
但是R 的语法是有点让人犯怵, 而且函数死活也记不住, 我只能拿着手册用R
但说实话, R总体软件质量比 pandas 之类的python软件好多了

【在 m******r 的大作中提到】
: 你这比方其实还真对了。 我老不断追根溯源直到最近才搞清楚,为啥R长这个样子。R
: 这个怪胎,原来起源于函数编程, 函数编程是和'图灵机'对等的一套体系。 比如在图
: 灵机体系下,有变量存在; 在函数编程里,只有常量,没有变量。 但是又有好多人,
: 出于好心,写出无数的package, 让大家用。
: 总之,想学R, 就要拿出学一门火星语的勇气。好比你见到一位火星人,如果他说话和
: 地球人不一样,那没什么奇怪的; 如果和地球人相同, 那反倒奇怪了。

N*****r
发帖数: 94
19

pandas在python 包里已经算是好的了
我最近拿 zipline 跑股票回测, 因为算法要保密,就没敢上 online的版本,本机跑
的, 然后乐子就来了
zipline跑出来的结果是个pickle file, 需要pyfolio读取, 然后我就发现 pyfolio
装不上,因为有个库的版本需要小于多少,而 zipline需要那个库大于多少。 而
pyfolio同时需要 zipline
类似这种的问题在python里无数, python里写算法是快, 但一个项目我做100天,实
际可能99天在解决库的依赖性, 简直要疯了, conda的多环境设计也帮不了啥
最过分的是大部分的库作者是明显的野路子出身,毫无软件设计的基本概念,基本上函
数界面一不爽就换, 到处是deprecated 的提示, 同一份code 半年之后就可能因为库
变了完全跑不通,修改的代价还不如重写划算
可能有人要劝我上docker,给每个软件单独建环境, 但你知道你需要同时维护多少个
docker吗? 我估计得小100

【在 w********l 的大作中提到】
: pandas最糟糕的是inconsistent unexpected behavior,不少设计和python data
: model不一致,最典型的就是loc, iloc,难用的令人发指

N*****r
发帖数: 94
20

pandas 最大的问题是unpredictable
我写东西, 可能用的结构不对,pandas一言不合给我奔到200G内存, 也不报错,是机
器慢了我才发现
不只是不用于产品的问题,感觉开发的时候都受不了

【在 g****t 的大作中提到】
: 有很多不可预测的错误吧。添数字,type什么的。
: overall来讲,pandas是质量非常高的软件了。但是长程效应不行。
: 用半年就受不了了。numpy更可靠。
: 一句话:pandas如果出了bug,我无法确定自己多长时间内搞定。
: 所以个人经验:不要用于产品。

相关主题
C++ 做线性代数,方便使用的库?搞矩阵的竟然没有人提BLAS
gnu c++ 自带的库能解矩阵方程吗?为啥matlab一直用列优先存储来存储array?
C++里用Blas/Lapack的问题 (转载)nv的显卡能战胜intel的CPU么
进入Programming版参与讨论
N*****r
发帖数: 94
21
说实话, python 大概是主流语言里设计最糟糕的一个
我有时候看到现在的新语言,老是怀念当年的pascal
g****t
发帖数: 31659
22
现在整个软件practice的时代已经不同了。软件不是只coding.
设计和做软件之前就要先看好tools各种依赖性和了解各种坑。
这是技术含量非常高的一件事。
Python语言问题不少。但是库还是非常强大的。
除了python和c ,还有哪个通用语言有稳定可靠的BLAS,LAPACK之类的矩阵计算,5年历
史以上的封装库?Web后台开发等等也一样。
历史长不代表着没问题。但是往往代表着出问题后能找到
别人的解决办法。


: 说实话, python 大概是主流语言里设计最糟糕的一个

: 我有时候看到现在的新语言,老是怀念当年的pascal



【在 N*****r 的大作中提到】
: 说实话, python 大概是主流语言里设计最糟糕的一个
: 我有时候看到现在的新语言,老是怀念当年的pascal

N*****r
发帖数: 94
23

blas lapack 哦, fortuna, 哈哈哈

【在 g****t 的大作中提到】
: 现在整个软件practice的时代已经不同了。软件不是只coding.
: 设计和做软件之前就要先看好tools各种依赖性和了解各种坑。
: 这是技术含量非常高的一件事。
: Python语言问题不少。但是库还是非常强大的。
: 除了python和c ,还有哪个通用语言有稳定可靠的BLAS,LAPACK之类的矩阵计算,5年历
: 史以上的封装库?Web后台开发等等也一样。
: 历史长不代表着没问题。但是往往代表着出问题后能找到
: 别人的解决办法。
:
:
: 说实话, python 大概是主流语言里设计最糟糕的一个

g****t
发帖数: 31659
24
你不要笑
现在矩阵计算正热门
懂矩阵计算的马工和不懂的,现在大有区别


: blas lapack 哦, fortuna, 哈哈哈



【在 N*****r 的大作中提到】
:
: blas lapack 哦, fortuna, 哈哈哈

N*****r
发帖数: 94
25

我的意思是能用blas lapack 的还有fortran , 故意打成了 fortuna... 哈哈
我其实一直都这么觉得, 编程能力始终就是个技能,并不是核心的东西, 核心的东西
是对某个行业的真正理解, 如果只是刷刷leetcode的算法,其实真混不到什么牛逼的
地步
我知道有哥们拿vb编的小程序,照样卖几千万的, 因为基本是那行业的独一份

【在 g****t 的大作中提到】
: 你不要笑
: 现在矩阵计算正热门
: 懂矩阵计算的马工和不懂的,现在大有区别
:
:
: blas lapack 哦, fortuna, 哈哈哈
:

g****t
发帖数: 31659
26
Fortran很多人在用。我其实也在考虑用回去。
我个人认为,计算机科学/编程序 有自己的自然律。
编程序不是纯粹技能。刷题只是入门。
掌握这套自然律,混饭是没问题的。
所以我觉得你的说法有点偏颇。


: 我的意思是能用blas lapack 的还有fortran , 故意打成了 fortuna...
哈哈

: 我其实一直都这么觉得, 编程能力始终就是个技能,并不是核心的东西
, 核心
的东西

: 是对某个行业的真正理解, 如果只是刷刷leetcode的算法,其实真混不
到什么
牛逼的

: 地步

: 我知道有哥们拿vb编的小程序,照样卖几千万的, 因为基本是那行业的
独一份



【在 N*****r 的大作中提到】
:
: 我的意思是能用blas lapack 的还有fortran , 故意打成了 fortuna... 哈哈
: 我其实一直都这么觉得, 编程能力始终就是个技能,并不是核心的东西, 核心的东西
: 是对某个行业的真正理解, 如果只是刷刷leetcode的算法,其实真混不到什么牛逼的
: 地步
: 我知道有哥们拿vb编的小程序,照样卖几千万的, 因为基本是那行业的独一份

N*****r
发帖数: 94
27

我的意思是到这个年纪这个学历, 混饭吃什么都能混饭吃,但是单靠编程想发点财太
难了, 还是得有核心的东西, 核心的东西那一行业都有, 计算机行业也有,但计算
机行业想出核心太难了, 应该在自己擅长的领域多找找看机会
就是那个老故事, 西部淘金的人绝大多数都没发财,真正卖牛仔裤的发了

【在 g****t 的大作中提到】
: Fortran很多人在用。我其实也在考虑用回去。
: 我个人认为,计算机科学/编程序 有自己的自然律。
: 编程序不是纯粹技能。刷题只是入门。
: 掌握这套自然律,混饭是没问题的。
: 所以我觉得你的说法有点偏颇。
:
:
: 我的意思是能用blas lapack 的还有fortran , 故意打成了 fortuna...
: 哈哈
:
: 我其实一直都这么觉得, 编程能力始终就是个技能,并不是核心的东西
: , 核心

g****t
发帖数: 31659
28
发财的主流是生意人,商学院什么的
编程序不是同一行的。
受的训练都不一样。
写程序求发财的,属于南辕北辙吧。或者类似于田径厉害的
打篮球出名了。


: 我的意思是到这个年纪这个学历, 混饭吃什么都能混饭吃,但是单靠编程想发
点财太

: 难了, 还是得有核心的东西, 核心的东西那一行业都有, 计算机行业也有,
但计算

: 机行业想出核心太难了, 应该在自己擅长的领域多找找看机会

: 就是那个老故事, 西部淘金的人绝大多数都没发财,真正卖牛仔裤的发了



【在 N*****r 的大作中提到】
:
: 我的意思是到这个年纪这个学历, 混饭吃什么都能混饭吃,但是单靠编程想发点财太
: 难了, 还是得有核心的东西, 核心的东西那一行业都有, 计算机行业也有,但计算
: 机行业想出核心太难了, 应该在自己擅长的领域多找找看机会
: 就是那个老故事, 西部淘金的人绝大多数都没发财,真正卖牛仔裤的发了

n***p
发帖数: 110
29
像scheme这种lisp系的函数语言当然好
R的确在函数语言里属于很ugly的。

【在 N*****r 的大作中提到】
:
: 我的意思是到这个年纪这个学历, 混饭吃什么都能混饭吃,但是单靠编程想发点财太
: 难了, 还是得有核心的东西, 核心的东西那一行业都有, 计算机行业也有,但计算
: 机行业想出核心太难了, 应该在自己擅长的领域多找找看机会
: 就是那个老故事, 西部淘金的人绝大多数都没发财,真正卖牛仔裤的发了

d******c
发帖数: 2407
30
总的感觉是,这个作者数学很强,编程很一般,但是站在风口上了,pandas变得很火,
其实是太多人涌进DS,R比较难学,python容易上手,于是pandas起来了。
就我的经验,exploratory data analysis, python系列全面弱于R系列。当然ML,训练
模型是另一回事。
R的data.table比pandas强太多了,pandas作者说了,内存需要是数据量的5-10倍。我
用data.table远没有这么夸张。
http://wesmckinney.com/blog/apache-arrow-pandas-internals/
相关主题
请教一个python(pandas)的效率问题Java码农转data science行业,有没有一起的 (转载)
请不要盲目崇拜FP语言data.table谁用过? 有那么神吗?
有没有觉得scipy很稀烂的?有人上Spark用python API的么
进入Programming版参与讨论
d******c
发帖数: 2407
31
pandas rule of thumb: have 5 to 10 times as much RAM as the size of your
dataset
There are additional, hidden memory killers in the project, like the way
that we use Python objects (like strings) for many internal details, so it's
not unusual to see a dataset that is 5GB on disk take up 20GB or more in
memory. It's an overall bad situation for large datasets.
The 10 (really 11) things are (paraphrasing my own words):
Internals too far from "the metal"
No support for memory-mapped datasets
Poor performance in database and file ingest / export
Warty missing data support
Lack of transparency into memory use, RAM management
Weak support for categorical data
Complex groupby operations awkward and slow
Appending data to a DataFrame tedious and very costly
Limited, non-extensible type metadata
Eager evaluation model, no query planning
"Slow", limited multicore algorithms for large datasets
t*******c
发帖数: 288
32
5 to 10 times? It sucks.

's

【在 d******c 的大作中提到】
: pandas rule of thumb: have 5 to 10 times as much RAM as the size of your
: dataset
: There are additional, hidden memory killers in the project, like the way
: that we use Python objects (like strings) for many internal details, so it's
: not unusual to see a dataset that is 5GB on disk take up 20GB or more in
: memory. It's an overall bad situation for large datasets.
: The 10 (really 11) things are (paraphrasing my own words):
: Internals too far from "the metal"
: No support for memory-mapped datasets
: Poor performance in database and file ingest / export

l******n
发帖数: 9344
33
我以前说过pandas用起来方便,但是效率低下,速度很慢,用numpy
pandas就是numpy的一个wrapper

【在 d******c 的大作中提到】
: 总的感觉是,这个作者数学很强,编程很一般,但是站在风口上了,pandas变得很火,
: 其实是太多人涌进DS,R比较难学,python容易上手,于是pandas起来了。
: 就我的经验,exploratory data analysis, python系列全面弱于R系列。当然ML,训练
: 模型是另一回事。
: R的data.table比pandas强太多了,pandas作者说了,内存需要是数据量的5-10倍。我
: 用data.table远没有这么夸张。
: http://wesmckinney.com/blog/apache-arrow-pandas-internals/

h******e
发帖数: 666
34
我以前用pandas也是觉得慢,有啥其他好的推荐吗?不会要用最基本的吧
w********m
发帖数: 1137
35
pandas的设计令人发指。
更糟糕的是,一些人以为这就是Python。
希望它的应用范围只有哪些搞金融的人。
k*****u
发帖数: 1688
36
为什么大家这么痛恨pandas?
我觉得它提供的几个功能还是能显著让python更方便啊,pivot,groupby,merge
数据很大的时候我一般split然后multiprocessing再合并
基本还是能保证工作都能按时完成
不过我也好几年不怎么用R了,不知道R现在是不是发展很快
主要觉得把每个都学一点不如把一个认真学好点
然后python的生态系统还是比R强壮的多
所以渐渐就主要用python了
p***o
发帖数: 1252
37
5到10倍这个锅其实不该pandas来背,python的代码如果不使劲优化就是要耗这么多内
存。

【在 t*******c 的大作中提到】
: 5 to 10 times? It sucks.
:
: 's

g****t
发帖数: 31659
38
有很多不可预测的错误吧。添数字,type什么的。
overall来讲,pandas是质量非常高的软件了。但是长程效应不行。
用半年就受不了了。numpy更可靠。
一句话:pandas如果出了bug,我无法确定自己多长时间内搞定。
所以个人经验:不要用于产品。

【在 k*****u 的大作中提到】
: 为什么大家这么痛恨pandas?
: 我觉得它提供的几个功能还是能显著让python更方便啊,pivot,groupby,merge
: 数据很大的时候我一般split然后multiprocessing再合并
: 基本还是能保证工作都能按时完成
: 不过我也好几年不怎么用R了,不知道R现在是不是发展很快
: 主要觉得把每个都学一点不如把一个认真学好点
: 然后python的生态系统还是比R强壮的多
: 所以渐渐就主要用python了

n******g
发帖数: 2201
39
金玉良言 我不做产品
用熊猫让上司爽了 过后就忘 管他什么产品
[在 guvest (我爱你老婆Anna) 的大作中提到:]
:有很多不可预测的错误吧。添数字,type什么的。
:overall来讲,pandas是质量非常高的软件了。但是长程效应不行。
:用半年就受不了了。numpy更可靠。
:一句话:pandas如果出了bug,我无法确定自己多长时间内搞定。
:所以个人经验:不要用于产品。
n******g
发帖数: 2201
40
熊猫的设计 让广大大妈sql程序员也能学会 所以获得了巨大成功
如同当年微软让普通人使用电脑 就占领了市场
[在 longtian (有人的地方,就有江湖) 的大作中提到:]
:我以前说过pandas用起来方便,但是效率低下,速度很慢,用numpy
:pandas就是numpy的一个wrapper
相关主题
有人上Spark用python API的么do you use blas/lapack?
求救:2个dense matrix的乘法Linux下运行lapack和blas的问题
Matrix calculation in C++How to use multi-core to speed Python program
进入Programming版参与讨论
w********l
发帖数: 87
41
没错,一个小bug要搞很久,这个库确实很糟糕,但是又没有替代品

【在 g****t 的大作中提到】
: 有很多不可预测的错误吧。添数字,type什么的。
: overall来讲,pandas是质量非常高的软件了。但是长程效应不行。
: 用半年就受不了了。numpy更可靠。
: 一句话:pandas如果出了bug,我无法确定自己多长时间内搞定。
: 所以个人经验:不要用于产品。

w********l
发帖数: 87
42
pandas最糟糕的是inconsistent unexpected behavior,不少设计和python data
model不一致,最典型的就是loc, iloc,难用的令人发指
m******r
发帖数: 1033
43
所以我当时选择学R.
R的学习周期真的很长,也出乎我预料。
w********l
发帖数: 87
44
我也学过R,我这辈子都不想再用R。对于有编程经历的人,R简直就是火星语

【在 m******r 的大作中提到】
: 所以我当时选择学R.
: R的学习周期真的很长,也出乎我预料。

d******a
发帖数: 32122
45
你没用过Stata。。。


: 我也学过R,我这辈子都不想再用R。对于有编程经历的人,R简直就是火星语



【在 w********l 的大作中提到】
: 我也学过R,我这辈子都不想再用R。对于有编程经历的人,R简直就是火星语
m******r
发帖数: 1033
46
你这比方其实还真对了。 我老不断追根溯源直到最近才搞清楚,为啥R长这个样子。R
这个怪胎,原来起源于函数编程, 函数编程是和'图灵机'对等的一套体系。 比如在图
灵机体系下,有变量存在; 在函数编程里,只有常量,没有变量。 但是又有好多人,
出于好心,写出无数的package, 让大家用。
总之,想学R, 就要拿出学一门火星语的勇气。好比你见到一位火星人,如果他说话和
地球人不一样,那没什么奇怪的; 如果和地球人相同, 那反倒奇怪了。

【在 w********l 的大作中提到】
: 我也学过R,我这辈子都不想再用R。对于有编程经历的人,R简直就是火星语
N*****r
发帖数: 94
47

R
我对函数编程没意见, 我爱死scheme,
但是R 的语法是有点让人犯怵, 而且函数死活也记不住, 我只能拿着手册用R
但说实话, R总体软件质量比 pandas 之类的python软件好多了

【在 m******r 的大作中提到】
: 你这比方其实还真对了。 我老不断追根溯源直到最近才搞清楚,为啥R长这个样子。R
: 这个怪胎,原来起源于函数编程, 函数编程是和'图灵机'对等的一套体系。 比如在图
: 灵机体系下,有变量存在; 在函数编程里,只有常量,没有变量。 但是又有好多人,
: 出于好心,写出无数的package, 让大家用。
: 总之,想学R, 就要拿出学一门火星语的勇气。好比你见到一位火星人,如果他说话和
: 地球人不一样,那没什么奇怪的; 如果和地球人相同, 那反倒奇怪了。

N*****r
发帖数: 94
48

pandas在python 包里已经算是好的了
我最近拿 zipline 跑股票回测, 因为算法要保密,就没敢上 online的版本,本机跑
的, 然后乐子就来了
zipline跑出来的结果是个pickle file, 需要pyfolio读取, 然后我就发现 pyfolio
装不上,因为有个库的版本需要小于多少,而 zipline需要那个库大于多少。 而
pyfolio同时需要 zipline
类似这种的问题在python里无数, python里写算法是快, 但一个项目我做100天,实
际可能99天在解决库的依赖性, 简直要疯了, conda的多环境设计也帮不了啥
最过分的是大部分的库作者是明显的野路子出身,毫无软件设计的基本概念,基本上函
数界面一不爽就换, 到处是deprecated 的提示, 同一份code 半年之后就可能因为库
变了完全跑不通,修改的代价还不如重写划算
可能有人要劝我上docker,给每个软件单独建环境, 但你知道你需要同时维护多少个
docker吗? 我估计得小100

【在 w********l 的大作中提到】
: pandas最糟糕的是inconsistent unexpected behavior,不少设计和python data
: model不一致,最典型的就是loc, iloc,难用的令人发指

N*****r
发帖数: 94
49

pandas 最大的问题是unpredictable
我写东西, 可能用的结构不对,pandas一言不合给我奔到200G内存, 也不报错,是机
器慢了我才发现
不只是不用于产品的问题,感觉开发的时候都受不了

【在 g****t 的大作中提到】
: 有很多不可预测的错误吧。添数字,type什么的。
: overall来讲,pandas是质量非常高的软件了。但是长程效应不行。
: 用半年就受不了了。numpy更可靠。
: 一句话:pandas如果出了bug,我无法确定自己多长时间内搞定。
: 所以个人经验:不要用于产品。

N*****r
发帖数: 94
50
说实话, python 大概是主流语言里设计最糟糕的一个
我有时候看到现在的新语言,老是怀念当年的pascal
相关主题
请推荐好的c++下的matrix库gnu c++ 自带的库能解矩阵方程吗?
lapack如何求解XA=BC++里用Blas/Lapack的问题 (转载)
C++ 做线性代数,方便使用的库?搞矩阵的竟然没有人提BLAS
进入Programming版参与讨论
g****t
发帖数: 31659
51
现在整个软件practice的时代已经不同了。软件不是只coding.
设计和做软件之前就要先看好tools各种依赖性和了解各种坑。
这是技术含量非常高的一件事。
Python语言问题不少。但是库还是非常强大的。
除了python和c ,还有哪个通用语言有稳定可靠的BLAS,LAPACK之类的矩阵计算,5年历
史以上的封装库?Web后台开发等等也一样。
历史长不代表着没问题。但是往往代表着出问题后能找到
别人的解决办法。


: 说实话, python 大概是主流语言里设计最糟糕的一个

: 我有时候看到现在的新语言,老是怀念当年的pascal



【在 N*****r 的大作中提到】
: 说实话, python 大概是主流语言里设计最糟糕的一个
: 我有时候看到现在的新语言,老是怀念当年的pascal

N*****r
发帖数: 94
52

blas lapack 哦, fortuna, 哈哈哈

【在 g****t 的大作中提到】
: 现在整个软件practice的时代已经不同了。软件不是只coding.
: 设计和做软件之前就要先看好tools各种依赖性和了解各种坑。
: 这是技术含量非常高的一件事。
: Python语言问题不少。但是库还是非常强大的。
: 除了python和c ,还有哪个通用语言有稳定可靠的BLAS,LAPACK之类的矩阵计算,5年历
: 史以上的封装库?Web后台开发等等也一样。
: 历史长不代表着没问题。但是往往代表着出问题后能找到
: 别人的解决办法。
:
:
: 说实话, python 大概是主流语言里设计最糟糕的一个

g****t
发帖数: 31659
53
你不要笑
现在矩阵计算正热门
懂矩阵计算的马工和不懂的,现在大有区别


: blas lapack 哦, fortuna, 哈哈哈



【在 N*****r 的大作中提到】
:
: blas lapack 哦, fortuna, 哈哈哈

N*****r
发帖数: 94
54

我的意思是能用blas lapack 的还有fortran , 故意打成了 fortuna... 哈哈
我其实一直都这么觉得, 编程能力始终就是个技能,并不是核心的东西, 核心的东西
是对某个行业的真正理解, 如果只是刷刷leetcode的算法,其实真混不到什么牛逼的
地步
我知道有哥们拿vb编的小程序,照样卖几千万的, 因为基本是那行业的独一份

【在 g****t 的大作中提到】
: 你不要笑
: 现在矩阵计算正热门
: 懂矩阵计算的马工和不懂的,现在大有区别
:
:
: blas lapack 哦, fortuna, 哈哈哈
:

g****t
发帖数: 31659
55
Fortran很多人在用。我其实也在考虑用回去。
我个人认为,计算机科学/编程序 有自己的自然律。
编程序不是纯粹技能。刷题只是入门。
掌握这套自然律,混饭是没问题的。
所以我觉得你的说法有点偏颇。


: 我的意思是能用blas lapack 的还有fortran , 故意打成了 fortuna...
哈哈

: 我其实一直都这么觉得, 编程能力始终就是个技能,并不是核心的东西
, 核心
的东西

: 是对某个行业的真正理解, 如果只是刷刷leetcode的算法,其实真混不
到什么
牛逼的

: 地步

: 我知道有哥们拿vb编的小程序,照样卖几千万的, 因为基本是那行业的
独一份



【在 N*****r 的大作中提到】
:
: 我的意思是能用blas lapack 的还有fortran , 故意打成了 fortuna... 哈哈
: 我其实一直都这么觉得, 编程能力始终就是个技能,并不是核心的东西, 核心的东西
: 是对某个行业的真正理解, 如果只是刷刷leetcode的算法,其实真混不到什么牛逼的
: 地步
: 我知道有哥们拿vb编的小程序,照样卖几千万的, 因为基本是那行业的独一份

N*****r
发帖数: 94
56

我的意思是到这个年纪这个学历, 混饭吃什么都能混饭吃,但是单靠编程想发点财太
难了, 还是得有核心的东西, 核心的东西那一行业都有, 计算机行业也有,但计算
机行业想出核心太难了, 应该在自己擅长的领域多找找看机会
就是那个老故事, 西部淘金的人绝大多数都没发财,真正卖牛仔裤的发了

【在 g****t 的大作中提到】
: Fortran很多人在用。我其实也在考虑用回去。
: 我个人认为,计算机科学/编程序 有自己的自然律。
: 编程序不是纯粹技能。刷题只是入门。
: 掌握这套自然律,混饭是没问题的。
: 所以我觉得你的说法有点偏颇。
:
:
: 我的意思是能用blas lapack 的还有fortran , 故意打成了 fortuna...
: 哈哈
:
: 我其实一直都这么觉得, 编程能力始终就是个技能,并不是核心的东西
: , 核心

g****t
发帖数: 31659
57
发财的主流是生意人,商学院什么的
编程序不是同一行的。
受的训练都不一样。
写程序求发财的,属于南辕北辙吧。或者类似于田径厉害的
打篮球出名了。


: 我的意思是到这个年纪这个学历, 混饭吃什么都能混饭吃,但是单靠编程想发
点财太

: 难了, 还是得有核心的东西, 核心的东西那一行业都有, 计算机行业也有,
但计算

: 机行业想出核心太难了, 应该在自己擅长的领域多找找看机会

: 就是那个老故事, 西部淘金的人绝大多数都没发财,真正卖牛仔裤的发了



【在 N*****r 的大作中提到】
:
: 我的意思是到这个年纪这个学历, 混饭吃什么都能混饭吃,但是单靠编程想发点财太
: 难了, 还是得有核心的东西, 核心的东西那一行业都有, 计算机行业也有,但计算
: 机行业想出核心太难了, 应该在自己擅长的领域多找找看机会
: 就是那个老故事, 西部淘金的人绝大多数都没发财,真正卖牛仔裤的发了

n***p
发帖数: 110
58
像scheme这种lisp系的函数语言当然好
R的确在函数语言里属于很ugly的。

【在 N*****r 的大作中提到】
:
: 我的意思是到这个年纪这个学历, 混饭吃什么都能混饭吃,但是单靠编程想发点财太
: 难了, 还是得有核心的东西, 核心的东西那一行业都有, 计算机行业也有,但计算
: 机行业想出核心太难了, 应该在自己擅长的领域多找找看机会
: 就是那个老故事, 西部淘金的人绝大多数都没发财,真正卖牛仔裤的发了

g*****9
发帖数: 349
59
你说的这个问题在生产中非常不利。难怪银行都喜欢用SAS,code一直能用。
我知道这里大部分人都很鄙视SAS。恐怕这也是为什么银行现在都想把SAS给端了,直接
用开源的Python和R。首当其冲的就是Capital One
如果所有数据需要放内存的话,那真的很难处理。很多数据都特别大。

【在 N*****r 的大作中提到】
:
: 我的意思是到这个年纪这个学历, 混饭吃什么都能混饭吃,但是单靠编程想发点财太
: 难了, 还是得有核心的东西, 核心的东西那一行业都有, 计算机行业也有,但计算
: 机行业想出核心太难了, 应该在自己擅长的领域多找找看机会
: 就是那个老故事, 西部淘金的人绝大多数都没发财,真正卖牛仔裤的发了

1 (共1页)
进入Programming版参与讨论
相关主题
为啥matlab一直用列优先存储来存储array?求救:2个dense matrix的乘法
nv的显卡能战胜intel的CPU么Matrix calculation in C++
请教一个python(pandas)的效率问题do you use blas/lapack?
请不要盲目崇拜FP语言Linux下运行lapack和blas的问题
有没有觉得scipy很稀烂的?How to use multi-core to speed Python program
Java码农转data science行业,有没有一起的 (转载)请推荐好的c++下的matrix库
data.table谁用过? 有那么神吗?lapack如何求解XA=B
有人上Spark用python API的么C++ 做线性代数,方便使用的库?
相关话题的讨论汇总
话题: pandas话题: python话题: br话题: hate话题: apache