##基本操作 输入数组,对数组进行切片和索引

##本篇文章所有操作展示均在spyder命令行窗口

股票简称 2018年9月3日 2018年9月4日 2018年9月5日 2018年9月6日 2018年9月7日
中国石油 0.3731% 2.1066% -0.4854% 0.6089% -0.6060%
工商银行 -0.1838% 0.1842% -1.6544% -0.3738% 0.3752%
上汽集团 -0.3087% -0.0344% -3.3391% 0.7123% 0.4597%
宝钢股份 -2.4112% 1.1704% 2.9563% 1.4570% 1.6129%

##首先导入numpy模块并查看numpy的版本号(在命令型窗口)

##用np命名模块numpy

In [1]: import numpy as npIn [2]: np.__version__         ##这里__是两个下划线
Out[2]: '1.15.4'

##表中的数据为多维数据,使用列表来进行计算的话过于繁琐,用数组进行向量和矩阵计算就显得格外简洁明了

##下面用数组的方式在Python中输入开头四只股票的涨跌幅情况


In [3]: stock_return=np.array([[0.003731,0.021066,-0.004854,0.006098,-0.00606],[-0.001838,0.001842,-0.016544,-0.003738,0.003752],[-0.003087,-0.000344,-0.033391,0.007123,0.004597],[-0.024112,0.011704,-0.029563,-0.01457,0.016129]])In [4]: stock_return             ##输出数组
Out[4]:
array([[ 0.003731,  0.021066, -0.004854,  0.006098, -0.00606 ],[-0.001838,  0.001842, -0.016544, -0.003738,  0.003752],[-0.003087, -0.000344, -0.033391,  0.007123,  0.004597],[-0.024112,  0.011704, -0.029563, -0.01457 ,  0.016129]])In [5]: stock_return.shape       ##用shape判断得到这是一个(4,5)的二维数组
Out[5]: (4, 5)

##接下来需要将这四只股票的配置比例输入

##以列表的方式输入

##再将列表转换为数组

In [6]: weight_list=[0.15,0.2,0.25,0.4]In [7]: weight_array=np.array(weight_list)In [8]: weight_array               ##输出配置比例数组
Out[8]: array([0.15, 0.2 , 0.25, 0.4 ])

##这里输入股票涨跌幅的方法是直接输入,输入配置比例的方法是先输入列表,再将列表转化为数组,现实运用中两种方法都可以。

##查看数组的一些相关属性


In [9]: weight_array.ndim          ##查看数组维度
Out[9]: 1In [10]: stock_return.ndim
Out[10]: 2In [11]: weight_array.size        ##查看数组的元素数量
Out[11]: 4In [12]: stock_return.size
Out[12]: 20In [13]: weight_array.dtype        ##查看数组元素类型
Out[13]: dtype('float64')In [14]: stock_return.dtype
Out[14]: dtype('float64')

##数组的索引与切片

## 得到上汽集团在2018年9月6日的股票涨跌幅


In [15]: stock_return[2,3]        ##原数据在第三行第四列,python中从0开始计数
Out[15]: 0.007123

##得到工商银行和上汽集团在2018年9月5日到2018年9月7日的涨跌幅数据


In [16]: stock_return[1:3,3:5]        ##python中从0开始计数,遵循前闭后开
Out[16]:
array([[-0.003738,  0.003752],[ 0.007123,  0.004597]])

##计算投资组合(按照不同股票的权重)中每个交易日(9.3-9.7)的平均收益率。

上传代码截图以及运行结果。

In [17]: average_return= np.dot (weight_array,stock_return)  ##用dot函数计算矩阵之间的内积In [18]: average_return
Out[18]: array([-0.0102245 ,  0.0081239 , -0.02420985, -0.00388015,  0.00744225])

【Python numpy模块】结合金融场景演示numpy模块的操作相关推荐

  1. android 串口 wifi模块,一文深度了解串口WiFi模块的应用场景

    原标题:一文深度了解串口WiFi模块的应用场景 串口WiFi模块是应用极广泛的一种无线通信模块,其广泛应用于智能家居设备中,主要应用包括:无线家电.仪表.智能插座.智能开关.智能网关和智能灯泡等,下面 ...

  2. 100G CFP光模块类型应用场景详解

    目前,全球电信行业平稳发展,宽带用户稳定增长,随着大数据市场的迅猛发展,骨干网.接入网和数据中心建设均需采购大量的光通信产品,从而给光模块行业带来了全新的市场机遇.如今,100G光模块已成为市场发展的 ...

  3. python时间处理模块datetime+dateutil、numpy时间处理模块datetime64以及pandas时间处理模块Timestamp的演化路径及常用处理接口

    python时间处理模块datetime+dateutil.numpy时间处理模块datetime64以及pandas时间处理模块Timestamp及常用处理接口 python时间处理模块dateti ...

  4. python np fft_Python的武器库05:numpy模块(下)

    说到编程语言python,有一个著名的格言"余生太短,只用python".如果要分析为什么会存在这么一句格言?python的语法并不简单,有复杂难懂的部分,之所以又这样一句格言,是 ...

  5. python画函数图像要用到的模块_教你如何绘制数学函数图像——numpy和matplotlib的简单应用...

    numpy和matplotlib的简单应用 一.numpy库 1.什么是numpy NumPy系统是Python的一种开源的数值计算扩展.这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表 ...

  6. python numpy和pandas库的区别_Python模块 - Numpy与Pandas

    Numpy简介 Numpy是高性能科学计算和数据分析的基础包.它是pandas等其他各种工具的基础. Numpy的主要功能: ndarray,一个多维数组结构,高效且节省空间 无需循环对数组数据进行快 ...

  7. python搭建numpy_python开发环境搭建及numpy基本属性-【老鱼学numpy】

    目的 本节我们将介绍如何搭建python的开发环境以及numpy的基本属性,这样可以检验我们的numpy是否安装正确了. python开发环境的搭建 工欲善其事必先利其器,我用得比较顺手的是Intel ...

  8. python科学计算笔记(一)NumPy中ndarray对象、ufunc运算、矩阵运算

    标准安装的Python中用列表(list)保存一组值,可以用来当作数组使用,不过由于列表的元素可以是任何对象,因此列表中所保存的是对象的指针.这样为了保存一个简单的[1,2,3],需要有3个指针和三个 ...

  9. 超级攻略!Pandas\NumPy\Matrix用于金融数据准备

    来源:数据STUDIO 数据准备是一项必须具备的技术,是一个迭代且灵活的过程,可以用于查找.组合.清理.转换和共享数据集,包括用于分析/商业智能(BI).数据科学/机器学习(ML)和自主数据集成中.具 ...

最新文章

  1. HarmonyOS shape 的使用
  2. 盘点上海AI行业的10岁、20岁和30岁们
  3. 发红包案例(RedPacketFrame简介)
  4. 【Elasticsearch】十九种Elasticsearch字符串搜索方式
  5. 移动磁盘故障,如何在Mac修复?
  6. 拓端tecdat|matlab使用贝叶斯优化的深度学习:卷积神经网络CNN
  7. 电脑屏保海底世界_电脑游戏假面骑士kiva中文版
  8. SpringMVC中Model,ModelAndView,ModelMap的区别
  9. AAC MP3音频帧采样点大小
  10. smartbi v7 Linux,安装Smartbi
  11. 用word2vec解读延禧攻略人物关系
  12. uni-app学习之旅(二)uni-app开发规范
  13. 基于树莓派语音合成小白避坑
  14. 100以内的质数的三种实现
  15. Illegal mix of collations (utf8mb4_0900_ai_ci,IMPLICIT) and (utf8mb4_0900_as_ci,IMPLICIT) for operat
  16. 转向新页,控制页面大小并传值
  17. ldpc译码讲解_LDPC码译码方法和编码方法与流程
  18. 任务管理器Recent
  19. oracle建个触发器,oracle数据库如何创建触发器实例
  20. PythonShell

热门文章

  1. 工业相机的白平衡是什么?
  2. cDock for Mac(dock自定义工具)
  3. 米线店结账程序 装饰着模式_设计模式(三)装饰者模式
  4. 我的人生观 ——爱因斯坦
  5. dw为什么保存了看不到图片了_100%保存QQ闪照
  6. Html.DropDownListFor练习
  7. antd使用tree树形展开特别卡顿问题处理
  8. TouchDesigner学习 CHOP timer
  9. java compareto 函数,关于java:如何解决:compareTo 找不到符号
  10. java基础热门侠客养成_《世界》侠客基础养成攻略