月亮和Pandas - Wes Mckinney的传奇故事

正如死亡和税收不可避免,Pandas对量化人而言,也具有同样的地位 – 每个人都不可避免地要与之打交道。而Wes Mckinney正是Pandas的创建者。Pandas是有史以来,最成功的Python库之一,以一已之力,开拓了Python的生存空间。


毛姆的《月亮和六便士》讲述了这样一个故事,一个富有的英国股票经纪人,思特里克兰德,为了追求艺术和美,放弃自己的生活和家庭,来到巴黎,以艺术家的身份过着贫穷却目中无人的充足的生活,最终留下无数画作,享誉世界。

这本书表达了这样的意义,不要因终日寻找地上的六便士,而错过了头顶的月亮。金融和量化界充满着浮躁和虚荣,许多人追逐着快钱,然而easy come, easy go,最终却是一无所获。

20世纪初的金融人思特里克兰德,勘破了俗世红尘,转而潜心研究艺术,尽管后半生在物质上不如之前安逸,但能做自己喜欢的事,才是幸福

我们今天要介绍的Wes Mckinney,其经历也与思特里克兰德有异曲同工之处。不过,Wes Mckinney在经济上只有很小一段时间没有收入,随后很快就取得了事业上的成功。


Wes Mckinney, 大学毕业于MIT,后来拿到了杜克大学的数学和统计学两个博士学位。

他于2007年加入投资管理公司AQR。这是一家巨头公司,员工人数有1000人左右,管理规模达到了1400多亿美元。他们为机构客户提供另类和传统投资工具。

在AQR任职期间,大量的基础数据分析和统计工作是基于Microsoft Excel 手工完成的,这种工作极其繁琐和低效率。于是,Wes Mckinney从2008年开始,尝试开发Pandas,并选中了Python作为开发语言。

来源:pandas logo

在当时Python还不是一种很流行的数据分析和统计语言,不过Wes Mckinney很快就让它流行开来,Pandas在某种意义上,成为了“立王者”的角色 – 当然Python最终取得今天这般地位,还要借助AI的风力,才能够青云直上。


Pandas非常成功,但带来的问题是,Wes Mckinney的业余时间已经不能满足开发的需求。于是,他像思特里克兰德一样,离开了金融行业(并且退学。似乎每一个成功的美国创业者,都必须有dropout的经历),专心一意开发Pandas。

Pandas是开源产品,最初并不能提供任何收入,Wes Mckinney靠着之前工作的丰厚收入,以及兼职来养活自己。这期间,他还出版了一本名为《Python for Data Analysis》的书,获得了一些稿费。

随着Pandas的成功,第二年,Wes Mckinney就从AQR招募了两名同事,与他一起探索Python和Pandas在金融行业的创业机会,随后, 他和Chang一起创建了DataPad公司。

现在, Pandas由超过2500名贡献者共同维护。 Wes Mckinney不再参与日常的pandas开发。但社区授予他终身仁慈独裁者(BDFL)的荣誉,拥有对Pandas未来发展的决定权,就像Guido之于Python一样。

2016年,Wes Mckinney与他人一起共同创建了Apache Arrow项目,现在Arrow是跨编程语言共享科学数据的主要格式。Arrow仍然是开源的项目,但Wes Mckinney提出一个非营利行业联盟的想法,成功地吸引到Two Sigma(就是大家熟悉的量化投资巨头)作为赞助商,此后,又吸引到NVidia, Intel, bloomberg等大公司的赞助,从而能够支持一个有六名全职开发人员的分布式团队。


从AQR开始,到主要以推广开源数据分析和数据科学工具作为职业生涯的主题,Wes Mckinney 经历了华丽的转身。他现在是Usra Labs的负责人,利用他的声誉,为Usra Labs获得资金,以促使开源和创新持续向前发展。

与坐在办公室里日复一日地数着绿纸相比,他显然更享受现在在田纳西纳什维尔的生活,因为他的目标是为这世界增添一份美好:do as much good in the world as I can。

Wes Mckinney的经历是一个传奇,他的成功也为现在想要进入金融行业的新人提供了一个范例:并不一定亲自下场做为金钱厮杀的角斗士,解决行业在软件方面的痛点,也许更容易成功。这世界并不缺少量化研究员,但Pandas和Arrow的创建者,永远只有一个。

如果你盯着月亮看,最终至少也能获得满天的清辉,它的光芒,远超六便士。

最后是一点来自 Wes Mckinney的小福利。

如果要推荐一本讲解Pandas的书,毫无疑问,没人任何书籍能比《Python for Data Analysis》更权威了。因为它是由Pandas的创建者 Wes McKinney 撰写的!这本书现在提供有网页版供开放访问。读者也可点击此链接阅读。在2023年4月进行更新后,它现在支持到了pandas 2.0版本。


75%如果你对Pandas和量化课程学习感兴趣,可以看看这里

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/806786.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python结合spy++

导入必要的库 import win32con from win32 import win32gui from win32 import win32clipboard as w import pyautogui import sys1.获取窗口全部属性 def show_window_attr(hwnd):"""显示窗口的属性:param hwnd: 窗口句柄(十进制):ret…

国内如何使用Suno-v3-AI音乐生成大模型?SparkAi创作系统搭建部署教程分享

一、文章前言 SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美,那么如何搭建部署AI创作ChatGPT?小编这里写一个详细图文教程吧。已支持…

亚信安慧AntDB-T数据库重分布的实现原理

摘要: 亚信安慧AntDB-T是一款通用企业级、高可用、高性能的原生分布式关系型数据库,具有多种分片方式。在数据库的使用过程中,随着数据的变更和增长,需要重新修改表的分片方式。 AntDB-T数据库支持重分布命令,在内核…

使用docker制作Android镜像(实操可用)

一、安装包准备 1、准备jdk 下载地址:Java Downloads | Oracle 注意版本!!!!!! 我下载的jdk17,不然后面构建镜像报错,就是版本不对 2、准备安装的工具包 ttps://dev…

迭代器模式【行为模式C++】

1.简介 迭代器模式是一种行为设计模式, 让你能在不暴露集合(聚合对象)底层表现形式 (列表、 栈和树等) 的情况下遍历集合(聚合对象)中所有的元素。 迭代器的意义就是将这个行为抽离封装起来&a…

C语言中的数据结构--链表的应用1(2)

前言 上一节我们学习了链表的概念以及链表的实现,那么本节我们就来了解一下链表具体有什么用,可以解决哪些实质性的问题,我们借用习题来加强对链表的理解,那么废话不多说,我们正式进入今天的学习 单链表相关经典算法O…

【CSS】利用Vue实现数字翻滚动画效果

利用Vue实现数字翻滚动画效果 在很多数据可视化的需求中,动态呈现数据变化是一个常见且具有较强视觉冲击力的手段,尤其是数字的实时变化。今天我们将探讨如何使用 Vue.js 和 CSS3 来实现数字的翻滚动画效果,即模拟真实物体在Z轴上翻动的效果…

WPS 365开启企业一站式AI办公;联发科推出生成式AI服务平台;马斯克:AI 明年或超越人类智力

WPS 365 升级一站式 AI 办公 昨日,金山办公生产力大会举行,现场发布了面向组织和企业的办公新质生产力平台 WPS 365,其包含升级的 WPS Office、最新发布的 WPS AI 企业版和 WPS 协作。 WPS 365 将能覆盖一个组织日常办公基本需求&#xff0c…

Java快速入门系列-6(数据库编程与JDBC)

第六章:数据库编程与JDBC 6.1 SQL基础6.1.1 SQL基本结构与命令6.1.2 SQL高级查询6.1.3 SQL子查询与联接6.2 JDBC原理与使用6.2.1 JDBC驱动程序与URL6.2.2 Statement、PreparedStatement与CallableStatement6.2.3 数据库事务处理6.3 数据库连接池6.4 事务管理6.1 SQL基础 SQL(…

2. Spring的创建和Bean的存取

经过前面的学习我们已经大体明白了 IOC 思想以及它的实现方式 DI ,本节要讲的是如何Spring框架实现实现DI。 本节目标: Spring(Core) 项目创建将对象存储到 Spring 中将对象(bean)从 Spring 中取出 1. 创建 Spring 项目 与开篇演示的 Spring Boot 项目不…

TiDB MVCC 版本堆积相关原理及排查手段

导读 本文介绍了 TiDB 中 MVCC(多版本并发控制)机制的原理和相关排查手段。 TiDB 使用 MVCC 机制实现事务,在写入新数据时不会直接替换旧数据,而是保留旧数据的同时以时间戳区分版本。 当历史版本堆积过多时,会导致读…

在Linux终端查找指定类型的文件并统计数量

下面举例说明: find /path/to/directory -type f -exec file {} \; | grep "MIDI"它的作用是在指定的目录(/path/to/directory)中搜索所有的文件(-type f),然后使用file命令检查每个文件的类型&a…

【C++学习】C++11新特性(第二节)—— 右值引用与移动语义超详解

文章目录 文章简介二.右值引用1.什么是左值,什么是右值?什么是左值引用,什么是右值引用?2.左值引用与右值引用比较 三.右值引用使用场景和意义1.左值引用的使用场景:2.左值引用的短板:3.右值引用与移动构造…

Axure RP中的相关概念及高保真原型构建方法

1 Axure RP中概念介绍 对于构建高保真原型来说,需要知道事件(Event)、Case、Action等概念。Axure RP中给出这些概念,是为了方便原型的构建,尤其是高保真原型的构建。 事件(Event)是附着于控件…

PHP自助建站系统,小白也能自己搭建网站

无需懂代码,用 自助建站 做企业官网就像做PPT一样简单,您可以亲自操刀做想要的效果! 自助建站是一款简单、快捷、高效的工具,可以帮助您制作响应式网站。我们的自助建站系统,将传统的编码工作转化为直观的拖拽操作和文…

buuctf之jarvisoj_level2

一、查看属性 首先还是必要的查看属性环节: 可以知道该文件是一个x86架构下的32位小段ELF程序,开启了栈不可执行(NX)保护,ret2shellcode是不行的 简单执行可以看到有一个简单的输入后输出hello world 二、静态分析 …

程序员学CFA——数量分析方法(二)

数量分析方法(二) 数理统计基础统计学的基本概念描述性统计学与推断性统计学总体与样本四种度量尺度名义尺度排序尺度区间尺度比率尺度 数据的展现频率分布直方图与频数多边形 中心趋势均值算术平均几何平均调和平均数加权平均 中位数众数 离散程度绝对离…

Vue2(十五):replace属性、编程式路由导航、缓存路由组件、路由组件独有钩子、路由守卫、history与hash

一、router-link的replace属性 1、作用:控制路由跳转时操作浏览器历史记录的模式 2、浏览器的历史记录有两种写入方式:分别为push和replace,push是追加历史记录,replace是替换当前记录。路由跳转时候默认为push 3、如何开启repla…

【40分钟速成智能风控8】智能反欺诈模型2

目录 ​编辑 智能反欺诈模型 图计算 智能信用风险模型 专家模型 逻辑回归 决策树 集成树 深度神经网络 循环神经网络 智能反欺诈模型 图计算 图计算(Graph Computing)是以关联图谱为基础引申出来的一类算法的统称,主要解决了图数…