news 2026/4/15 10:43:46

什么是Numpy?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
什么是Numpy?

What|NumPy 到底是什么?

⚙️ Python 的「数值计算底层引擎」:一个开源库,提供高效 n 维数组对象 ndarray + 广播机制 + 向量化数学函数;pandas、scipy、scikit-learn、PyTorch 都把它当底座。

量化圈名言:「没有 NumPy,Python 就是慢脚本;有了 NumPy,Python 变成向量化高铁」。

Who|天天在 import numpy?

1️⃣ 量化研究员:回测里 10 年 3000 只股票日收益 → 一行returns.mean(axis=0)秒算平均收益。

2️⃣ 数据工程师:CSV →np.loadtxt→ 矩阵,一步完成。

3️⃣ 机器学习工程师:把图片转成np.uint8数组喂给 CNN。

4️⃣ 高校学生:线性代数作业np.linalg.eig算特征值。

5️⃣ 散户极客:用numpy.random做蒙特卡洛模拟资产价格路径。

Where|在哪用?

🖥️ 本地:Anaconda 自带,无需额外安装。

🌐 云端:Colab、Kaggle 内核已预装 NumPy + MKL 加速。

📱 嵌入式:MicroPython 裁剪版也能import numpy

🖱️ 在线:GitHub Codespaces 终端python -c "import numpy; print(numpy.__version__)"

When|什么时候必须用?

⚡ 循环太慢:纯 Python for 算 100 万条收益均值要 1 秒 → NumPy 向量化 10 ms。

⚡ 维度广播:不同 shape 的矩阵相加,不用手写双重循环。

⚡ 线性代数:求协方差、特征值、矩阵乘法,调用np.dot/np.linalg一步到位。

⚡ 随机模拟:几何布朗运动、Bootstrap 重采样,用np.random家族即可。

Why|用 NumPy 而不用纯 Python?

  1. ✅ C 级速度:底层 OpenBLAS/MKL 优化,向量化比 for 循环快 10–100×。
  2. ✅ 内存省:ndarray 连续存储,同样 float64 数组比 list 省 40% 内存。
  3. ✅ 广播语法:写a + b就能自动对齐维度,代码短、可读性高。
  4. ✅ 生态核心:pandas Series/DataFrame 底层就是 ndarray,不会 NumPy 就看不懂源码。

How|60 秒最小示例(向量化)

先安装Numpy:

pipinstallnumpy

导入:

importnumpyasnp

创建 252 天、3000 只股票的随机日收益矩阵:

# ① 创建 252 天、3000 只股票的随机日收益矩阵# 均值 0.05%,日波动 2.2%rets=np.random.normal(0.0005,0.022,size=(252,3000))rets

年化收益,按股票维度(axis=0):

# ② 年化收益,按股票维度(axis=0)annual_ret=rets.mean(axis=0)*252annual_ret

波动,按股票维度(axis=0):

# 波动,按股票维度(axis=0)annual_vol=rets.std(axis=0)*np.sqrt(252)annual_vol

夏普(无风险 2%):

# ③ 夏普(无风险 2%)sharpe=(annual_ret-0.02)/annual_volprint('平均夏普:',sharpe.mean().round(2))# 输出 ≈ 0.73

协方差矩阵(3000×3000):’

# ④ 协方差矩阵(3000×3000)cov=np.cov(rets,rowvar=False)# rowvar=False 表示每列是一只股票print('协方差矩阵形状:',cov.shape)# (3000, 3000)

完整代码:

importnumpyasnp# ① 创建 252 天、3000 只股票的随机日收益矩阵rets=np.random.normal(0.0005,0.022,size=(252,3000))# 均值 0.05%,日波动 2.2%# ② 年化收益 & 波动,按股票维度(axis=0)annual_ret=rets.mean(axis=0)*252annual_vol=rets.std(axis=0)*np.sqrt(252)# ③ 夏普(无风险 2%)sharpe=(annual_ret-0.02)/annual_volprint('平均夏普:',sharpe.mean().round(2))# 输出 ≈ 0.73# ④ 协方差矩阵(3000×3000)cov=np.cov(rets,rowvar=False)# rowvar=False 表示每列是一只股票print('协方差矩阵形状:',cov.shape)# (3000, 3000)

运行完:

  • 252 万数据点,全程向量化,本地笔记本 < 200 ms 完成。
  • 一行np.cov直接拿到马科维茨输入矩阵。

一句话总结:NumPy = Python 的「向量化高铁」:ndarray 让循环进 C 语言,速度×100,内存省,所有量化/ML 库都站在这块基石上。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/9 21:54:49

还在手动排期?Open-AutoGLM让宠物美容预约全自动,省时又精准

第一章&#xff1a;宠物美容预约的自动化变革随着宠物经济的迅猛发展&#xff0c;传统宠物美容门店面临预约混乱、资源调度低效等问题。自动化技术的引入正在彻底改变这一行业的工作模式&#xff0c;通过数字化系统实现服务流程的精准管理与客户体验的全面提升。在线预约系统的…

作者头像 李华
网站建设 2026/4/14 12:15:06

对比学习新方法改进多模态数据表示

许多人工智能的最新进展都源于表示学习&#xff1a;机器学习模型学习将数据项表示为多维空间中的向量&#xff0c;其中向量之间的几何关系对应着项目之间的语义关系。某中心M5团队致力于构建与某中心商店相关数据的通用语义表示——产品描述、查询、评论等——这些表示可供某中…

作者头像 李华
网站建设 2026/4/14 0:40:57

Open-AutoGLM如何重塑宠物经济:5大核心技术驱动智能服务预订升级

第一章&#xff1a;Open-AutoGLM如何重塑宠物经济&#xff1a;5大核心技术驱动智能服务预订升级随着宠物经济的蓬勃发展&#xff0c;智能化服务预订系统正成为提升用户体验的关键。Open-AutoGLM 作为新一代生成式语言模型驱动平台&#xff0c;深度融合 AI 技术与宠物服务场景&a…

作者头像 李华
网站建设 2026/4/12 7:02:27

Open-AutoGLM美甲服务上线背后:9个关键技术决策让系统稳定运行

第一章&#xff1a;Open-AutoGLM美甲服务上线背景与整体架构Open-AutoGLM美甲服务平台是基于多模态大模型技术构建的智能化美甲设计与推荐系统&#xff0c;旨在通过AI驱动个性化图案生成、色彩搭配建议及用户偏好学习&#xff0c;提升美甲行业的数字化服务水平。该平台融合了自…

作者头像 李华
网站建设 2026/4/10 20:31:18

Open-AutoGLM保姆级教程,新手也能当天上线AI视频生产线

第一章&#xff1a;Open-AutoGLM保姆级教程概述Open-AutoGLM 是一个开源的自动化自然语言处理框架&#xff0c;专为简化大语言模型&#xff08;LLM&#xff09;任务流程而设计。它支持任务自动拆解、工具调用、结果生成与反馈优化&#xff0c;适用于智能客服、文档摘要、代码生…

作者头像 李华