章节目录
第1章 NumPy快速入门 1 1.1 Python 1 1.2 动手实践:在不同的操作系统上安装Python 1 1.3 Windows 2 1.4 动手实践:在Windows上安装NumPy、Matplotlib、SciPy和IPython 2 1.5 Linux 4 1.6 动手实践:在Linux上安装NumPy、Matplotlib、SciPy和IPython 5 1.7 Mac OS X 5 1.8 动手实践:在Mac OS X上安装NumPy、Matplotlib和SciPy 5 1.9 动手实践:使用MacPorts或Fink安装NumPy、SciPy、Matplotlib和IPython 7 1.10 编译源代码 8 1.11 数组对象 8 1.12 动手实践:向量加法 8 1.13 IPython:一个交互式shell工具 11 1.14 在线资源和帮助 14 1.15 本章小结 15 第2章 NumPy基础 16 2.1 NumPy数组对象 16 2.2 动手实践:创建多维数组 17 2.2.1 选取数组元素 18 2.2.2 NumPy数据类型 19 2.2.3 数据类型对象 20 2.2.4 字符编码 20 2.2.5 自定义数据类型 21 2.2.6 dtype类的属性 22 2.3 动手实践:创建自定义数据类型 22 2.4 一维数组的索引和切片 23 2.5 动手实践:多维数组的切片和索引 23 2.6 动手实践:改变数组的维度 26 2.7 数组的组合 27 2.8 动手实践:组合数组 27 2.9 数组的分割 30 2.10 动手实践:分割数组 30 2.11 数组的属性 32 2.12 动手实践:数组的转换 34 2.13 本章小结 35 第3章 常用函数 36 3.1 文件读写 36 3.2 动手实践:读写文件 36 3.3 CSV文件 37 3.4 动手实践:读入CSV文件 37 3.5 成交量加权平均价格(VWAP) 38 3.6 动手实践:计算成交量加权平均价格 38 3.6.1 算术平均值函数 38 3.6.2 时间加权平均价格 39 3.7 取值范围 39 3.8 动手实践:找到最大值和最小值 40 3.9 统计分析 41 3.10 动手实践:简单统计分析 41 3.11 股票收益率 43 3.12 动手实践:分析股票收益率 43 3.13 日期分析 45 3.14 动手实践:分析日期数据 45 3.15 周汇总 48 3.16 动手实践:汇总数据 48 3.17 真实波动幅度均值(ATR) 52 3.18 动手实践:计算真实波动幅度均值 52 3.19 简单移动平均线 54 3.20 动手实践:计算简单移动平均线 54 3.21 指数移动平均线 56 3.22 动手实践:计算指数移动平均线 56 3.23 布林带 58 3.24 动手实践:绘制布林带 58 3.25 线性模型 61 3.26 动手实践:用线性模型预测价格 61 3.27 趋势线 63 3.28 动手实践:绘制趋势线 63 3.29 ndarray对象的方法 66 3.30 动手实践:数组的修剪和压缩 67 3.31 阶乘 67 3.32 动手实践:计算阶乘 67 3.33 本章小结 68 第4章 便捷函数 70 4.1 相关性 70 4.2 动手实践:股票相关性分析 71 4.3 多项式 74 4.4 动手实践:多项式拟合 74 4.5 净额成交量 77 4.6 动手实践:计算OBV 78 4.7 交易过程模拟 79 4.8 动手实践:避免使用循环 80 4.9 数据平滑 82 4.10 动手实践:使用hanning函数平滑数据 82 4.11 本章小结 85 第5章 矩阵和通用函数 86 5.1 矩阵 86 5.2 动手实践:创建矩阵 86 5.3 从已有矩阵创建新矩阵 88 5.4 动手实践:从已有矩阵创建新矩阵 88 5.5 通用函数 89 5.6 动手实践:创建通用函数 89 5.7 通用函数的方法 90 5.8 动手实践:在add上调用通用函数的方法 91 5.9 算术运算 93 5.10 动手实践:数组的除法运算 93 5.11 模运算 95 5.12 动手实践:模运算 95 5.13 斐波那契数列 96 5.14 动手实践:计算斐波那契数列 96 5.15 利萨茹曲线 97 5.16 动手实践:绘制利萨茹曲线 97 5.17 方波 99 5.18 动手实践:绘制方波 99 5.19 锯齿波和三角波 100 5.20 动手实践:绘制锯齿波和三角波 101 5.21 位操作函数和比较函数 102 5.22 动手实践:玩转二进制位 102 5.23 本章小结 104 第6章 深入学习NumPy模块 105 6.1 线性代数 105 6.2 动手实践:计算逆矩阵 105 6.3 求解线性方程组 107 6.4 动手实践:求解线性方程组 107 6.5 特征值和特征向量 108 6.6 动手实践:求解特征值和特征向量 108 6.7 奇异值分解 110 6.8 动手实践:分解矩阵 110 6.9 广义逆矩阵 112 6.10 动手实践:计算广义逆矩阵 112 6.11 行列式 113 6.12 动手实践:计算矩阵的行列式 113 6.13 快速傅里叶变换 114 6.14 动手实践:计算傅里叶变换 114 6.15 移频 115 6.16 动手实践:移频 116 6.17 随机数 117 6.18 动手实践:硬币赌博游戏 117 6.19 超几何分布 119 6.20 动手实践:模拟游戏秀节目 119 6.21 连续分布 121 6.22 动手实践:绘制正态分布 121 6.23 对数正态分布 122 6.24 动手实践:绘制对数正态分布 122 6.25 本章小结 123 第7章 专用函数 124 7.1 排序 124 7.2 动手实践:按字典序排序 124 7.3 复数 126 7.4 动手实践:对复数进行排序 126 7.5 搜索 127 7.6 动手实践:使用searchsorted函数 127 7.7 数组元素抽取 128 7.8 动手实践:从数组中抽取元素 128 7.9 金融函数 129 7.10 动手实践:计算终值 130 7.11 现值 131 7.12 动手实践:计算现值 131 7.13 净现值 131 7.14 动手实践:计算净现值 132 7.15 内部收益率 132 7.16 动手实践:计算内部收益率 132 7.17 分期付款 133 7.18 动手实践:计算分期付款 133 7.19 付款期数 133 7.20 动手实践:计算付款期数 134 7.21 利率 134 7.22 动手实践:计算利率 134 7.23 窗函数 134 7.24 动手实践:绘制巴特利特窗 135 7.25 布莱克曼窗 135 7.26 动手实践:使用布莱克曼窗平滑股价数据 136 7.27 汉明窗 137 7.28 动手实践:绘制汉明窗 137 7.29 凯泽窗 138 7.30 动手实践:绘制凯泽窗 138 7.31 专用数学函数 139 7.32 动手实践:绘制修正的贝塞尔函数 139 7.33 sinc函数 140 7.34 动手实践:绘制sinc函数 140 7.35 本章小结 142 第8章 质量控制 143 8.1 断言函数 143 8.2 动手实践:使用assert_almost_equal断言近似相等 144 8.3 近似相等 145 8.4 动手实践:使用assert_approx_equal断言近似相等 145 8.5 数组近似相等 146 8.6 动手实践:断言数组近似相等 146 8.7 数组相等 147 8.8 动手实践:比较数组 147 8.9 数组排序 148 8.10 动手实践:核对数组排序 148 8.11 对象比较 149 8.12 动手实践:比较对象 149 8.13 字符串比较 149 8.14 动手实践:比较字符串 150 8.15 浮点数比较 150 8.16 动手实践:使用assert_array_ almost_equal_nulp比较浮点数 151 8.17 多ULP的浮点数比较 151 8.18 动手实践:设置maxulp并比较浮点数 151 8.19 单元测试 152 8.20 动手实践:编写单元测试 152 8.21 nose和测试装饰器 154 8.22 动手实践:使用测试装饰器 155 8.23 文档字符串 157 8.24 动手实践:执行文档字符串测试 157 8.25 本章小结 158 第9章 使用Matplotlib绘图 159 9.1 简单绘图 159 9.2 动手实践:绘制多项式函数 159 9.3 格式字符串 161 9.4 动手实践:绘制多项式函数及其导函数 161 9.5 子图 163 9.6 动手实践:绘制多项式函数及其导函数 163 9.7 财经 165 9.8 动手实践:绘制全年股票价格 165 9.9 直方图 167 9.10 动手实践:绘制股价分布直方图 167 9.11 对数坐标图 169 9.12 动手实践:绘制股票成交量 169 9.13 散点图 171 9.14 动手实践:绘制股票收益率和成交量变化的散点图 171 9.15 着色 173 9.16 动手实践:根据条件进行着色 173 9.17 图例和注释 175 9.18 动手实践:使用图例和注释 175 9.19 三维绘图 177 9.20 动手实践:在三维空间中绘图 178 9.21 等高线图 179 9.22 动手实践:绘制色彩填充的等高线图 179 9.23 动画 180 9.24 动手实践:制作动画 180 9.25 本章小结 182 第10章 NumPy的扩展:SciPy 183 10.1 MATLAB和Octave 183 10.2 动手实践:保存和加载.mat文件 183 10.3 统计 184 10.4 动手实践:分析随机数 185 10.5 样本比对和SciKits 187 10.6 动手实践:比较股票对数收益率 187 10.7 信号处理 190 10.8 动手实践:检测QQQ股价的线性趋势 190 10.9 傅里叶分析 192 10.10 动手实践:对去除趋势后的信号进行滤波处理 192 10.11 数学优化 194 10.12 动手实践:拟合正弦波 195 10.13 数值积分 197 10.14 动手实践:计算高斯积分 198 10.15 插值 198 10.16 动手实践:一维插值 198 10.17 图像处理 200 10.18 动手实践:处理Lena图像 200 10.19 音频处理 202 10.20 动手实践:重复音频片段 202 10.21 本章小结 204 第11章 玩转Pygame 205 11.1 Pygame 205 11.2 动手实践:安装Pygame 205 11.3 Hello World 206 11.4 动手实践:制作简单游戏 206 11.5 动画 208 11.6 动手实践:使用NumPy和Pygame制作动画对象 208 11.7 Matplotlib 211 11.8 动手实践:在Pygame中使用Matplotlib 211 11.9 屏幕像素 214 11.10 动手实践:访问屏幕像素 214 11.11 人工智能 216 11.12 动手实践:数据点聚类 216 11.13 OpenGL和Pygame 218 11.14 动手实践:绘制谢尔宾斯基地毯 218 11.15 模拟游戏 221 11.16 动手实践:模拟生命 221 11.17 本章小结 224 突击测验答案 225
内容简介
NumPy是一个优秀的科学计算库,提供了很多实用的数学函数、强大的多维数组对象和优异的计算性能,不仅可以取代Matlab和Mathematica的许多功能,而且业已成为Python科学计算生态系统的重要组成部分。但与这些商业产品不同,它是免费的开源软件。 本书从NumPy安装讲起,逐渐过渡到数组对象、常用函数、矩阵运算、线性代数、金融函数、窗函数、质量控制等内容,致力于向初中级Python编程人员全面讲述NumPy及其使用。另外,通过书中丰富的示例,你还将学会Matplotlib绘图,并结合使用其他Python科学计算库(如SciPy和Scikits),让工作更有成效,让代码更加简洁而高效。 主要内容: 在不同平台安装NumPy; 用简洁高效的NumPy代码实现高性能计算; 使用功能强大的通用函数; 使用NumPy数组和矩阵; 用NumPy模块轻松执行复杂的数值计算; Matplotlib绘图; NumPy代码测试。
下载说明
1、Python数据分析基础教程(第2版)是作者伊德里斯 (Ivan Idris)创作的原创作品,下载链接均为网友上传的网盘链接!
2、相识电子书提供优质免费的txt、pdf等下载链接,所有电子书均为完整版!