V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
huzhikuizainali
V2EX  ›  Python

做数据分析的时候你用的是 Python ?还是 pandas 和 numpy 以及其他三方库?

  •  
  •   huzhikuizainali · 2020-12-11 10:43:11 +08:00 · 2024 次点击
    这是一个创建于 1447 天前的主题,其中的信息可能已经有所发展或是发生改变。
    声明一下,我知道 pandas 和 numpy 是在 python 中使用的。

    最近概览了一些 python 有关的书籍和视频。对于数据分析和数据挖掘人员来说,感觉更多的时候是在使用 pandas 和 numpy 这些三方包。而 python 更多的时候像个操作系统。而 pandas 和 numpy 更像是跑在这个操作系统上的应用。就好比你要对十组数据批量求和,你当然可以用 windows 的计算器去一个一个计算求和。但是用 excel 显然更快。虽然 excel 也是透过 windows 去调用 cpu 的运算能力。但是对用户来说 excel 显然比用 windows 计算器更高效,更友好。

    如果以上认识没有大的偏差。对于想以 python 为工具(意思是不用 R 、matlab 、spass,sas )的数据从业人员,如果有一定的编程基础(例如学过 c 语言)是否只需简单的学一下 python 基础知识(大概知道前包后不包,循环控制语句和 c 语言不同)。而将更多的时间用在 pandas 、numpy 、以及其他用得着的三方库的学习上!这样是不是更高效?类似于《流畅的 python 》这样的书,一时半会用不上吧?

    以 python 为工具的数据大神,请多多分享,多多指教。
    9 条回复    2020-12-12 22:57:56 +08:00
    linoder
        1
    linoder  
       2020-12-11 10:52:16 +08:00
    对于数据分析师或者 BI 团队来讲 …… 语言真的是工具 核心是 数据建模 数据建模 数据建模 ……

    偏向运营分析得基本 Excel 足够,最多学学 SQL 自己导数据


    实在是想自己编程用

    pandas 、numpy 足够应付一般工作了
    karatsuba
        2
    karatsuba  
       2020-12-11 13:29:52 +08:00   ❤️ 1
    楼上说得对,给我点个赞吧
    nthhdy
        3
    nthhdy  
       2020-12-11 17:53:33 +08:00
    我觉得可以。做好遇到问题 hack 它的准备就行。
    huzhikuizainali
        4
    huzhikuizainali  
    OP
       2020-12-11 19:23:22 +08:00
    @linoder 谢谢回复。如果是数据挖掘呢?
    huzhikuizainali
        5
    huzhikuizainali  
    OP
       2020-12-11 19:24:06 +08:00
    @nthhdy 谢谢回复。请问你日常主要做什么工作。什么工具用的最多。可否分享一下体验。
    jones2000
        6
    jones2000  
       2020-12-11 21:58:44 +08:00
    1. 了解算法,
    2. 知道什么数据用什么算法来分析,建模.
    3. 根据需要的算法找到对应的第 3 方库,计算结果.

    1,2 是核心数据分析人员
    3 工具人.
    huzhikuizainali
        7
    huzhikuizainali  
    OP
       2020-12-11 23:40:34 +08:00
    @jones2000 谢谢解答!
    刚才在其他地方也有老师向我强调数据结构和算法。请问这里的算法是指 K 临近,神经网络 这些“范式”的算法?还是针对一个一个具体需要解决的问题的针对性算法?
    pandas,numpy 这些库的构建本身也包含了很多算法,例如 pandas 可以“滚动”求平均值(例如计算价格的 5 日平均值)。这就比自己用循环语句去求数据的滚动平均值运行效率要高的多。这当然应该是库里面的算法优于一般的循环算法。
    我猜,日常工作中“核心数据分析人员”的算法应该改不需要再为那些“范式”设计算法了,顶多改改参数?也不需要再去为类似“滚动”平均值涉及算法,因为这相当于重新造轮子。
    那么“核心数据分析人员”需要在面对什么问题时自己设计算法呢?设计算法的首要目的是什么呢?提高程序运行效率?
    不知道是否有适合数据分析人员阅读的算法相关数据推荐。
    huzhikuizainali
        8
    huzhikuizainali  
    OP
       2020-12-11 23:49:54 +08:00
    @jones2000 不知道是否有适合数据分析人员阅读的算法相关书籍推荐。-------------不好意思,最后一句打错字了。特此纠正
    jones2000
        9
    jones2000  
       2020-12-12 22:57:56 +08:00
    核心数据分析人员,可以不是编程人员, 可以不懂编程,一般都是数学系的, 熟悉各个算法原理, 比如最基础的傅里叶变换,可以用在什么场景下, 在特定场景下通过叠加其他的算法, 来达到预测数据的准确性。出一个数据建模。
    至于如何提交计算输出, 是单线程算,还是分布式计算那是开发人员的事。

    一般要分析或测预数据,先去大学找数学 /物理等基础学科的老师或博士生, 让他们给一个初步的数据建模, 然后根据他们的建模由程序员开发系统。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5504 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 08:02 · PVG 16:02 · LAX 00:02 · JFK 03:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.