python数据处理——numpy_2
上一次的学习了numpy的一些基础操作,今天接着学习numpy的高级索引、轴对换数值转置以及作图。
#花式索引
import numpy as np
'''
t = np.empty((8,4)) #建立一个8行4列的空数组
for i in range(8):
t[i] = i
'''
#print t
#print t[[4, 3, 0, 6]] 选取特定的行子集
#print t[[-3,-5,-7]] 使用负数从末行开始找
arr =np.arange(32).reshape((8,4))
#print arr[[1,5,7,2], [0,3,1,2]]
#输出的结果是:array([4,23,29,10])。其实是按照(1,0),(5,3),(7,1),(2,2)所找到的
#print arr[[1,5,7,2]][:,[0,3,1,2]]
'''输出结果:
[[ 4 7 5 6]
[20 23 21 22]
[28 31 29 30]
[ 8 11 9 10]]
形如arr[[]][[]]的索引,第一个[[]]是选出指定的行,
然后第二个[[]]就如同上面的意思在第一个[[]]选出的
行中再选出特定值。
'''
#使用np.ix_函数,同样可以得到以上结果。
#print arr[np.ix_([1,5,7,2], [0,3,1,2])] #数组转置和轴对换 arr = np.arange(15).reshape((3,5))
#print arr
# T属性是数组中比较特殊的属性,可以将数组的行和列对换。
#print arr.T
arr_1 = np.random.randn(6,3)
# np.dot计算矩阵内积
#print np.dot(arr_1.T, arr_1)
arr_2 = np.arange(24).reshape((2,4,3))
# reshape创建三维数组,是以第一个值为z轴,第二个值为y轴,第三个为x轴。
#print arr_2
# transpose函数中0代表z轴;1代表y轴;2代表x轴。
#print arr_2.transpose((1,0,2))
接着作图:
import numpy as np
import matplotlib.pyplot as plt
points = np.arange(-5, 5, 0.01)
#不能将xs和ys分开写!np.meshgrid()接受两个一维数组产生两个二维矩阵((x,y)对)。
xs, ys = np.meshgrid(points, points)
z = np.sqrt(xs ** 2 + ys ** 2)
fig = plt.figure()
ax = fig.add_subplot(221)
ax.imshow(z)
ax = fig.add_subplot(222)
ax.imshow(z, cmap=plt.cm.gray)
ax = fig.add_subplot(223)
ax.imshow(z,cmap=plt.cm.cool)
ax = fig.add_subplot(224)
ax.imshow(z,cmap=plt.cm.hot)
#plt.title("Image plot of $\sqrt{x^2 + y^2}$ for a grid of values")
plt.show()
结果为:

python数据处理——numpy_2的更多相关文章
- Python数据处理PDF
Python数据处理(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1h8a5-iUr4mF7cVujgTSGOA 提取码:6fsl 复制这段内容后打开百度网盘手机A ...
- Python 数据处理库 pandas 入门教程
Python 数据处理库 pandas 入门教程2018/04/17 · 工具与框架 · Pandas, Python 原文出处: 强波的技术博客 pandas是一个Python语言的软件包,在我们使 ...
- 参考《Python数据处理》中英文PDF+源代码
在实际操作中掌握数据处理方法,比较实用.采用基于项目的方法,介绍用Python完成数据获取.数据清洗.数据探索.数据呈现.数据规模化和自动化的过程.主要内容包括:Python基础知识,如何从CSV.E ...
- python数据处理技巧二
python数据处理技巧二(掌控时间) 首先简单说下关于时间的介绍其中重点是时间戳的处理,时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00 ...
- Python 数据处理之对 list 数据进行数据重排(为连续的数字序号)
Python 数据处理之对 list 数据进行数据重排(为连续的数字序号) # user ID 序号重新排,即,原来是 1,3,4,6 ,排为 1,2,3,4 # item ID 序号重新排,too ...
- Python数据处理pdf (中文版带书签)、原书代码、数据集
Python数据处理 前言 xiii第1 章 Python 简介 11.1 为什么选择Python 41.2 开始使用Python 41.2.1 Python 版本选择 51.2.2 安装Python ...
- Python 数据处理库pandas教程(最后附上pandas_datareader使用实例)
0 简单介绍 pandas是一个Python语言的软件包,在我们使用Python语言进行机器学习编程的时候,这是一个非常常用的基础编程库.本文是对它的一个入门教程. pandas提供了快速,灵活和富有 ...
- python数据处理书pdf版本|内附网盘链接直接提取|
Python数据处理采用基于项目的方法,介绍用Python完成数据获取.数据清洗.数据探索.数据呈现.数据规模化和自动化的过程.主要内容包括:Python基础知识,如何从CSV.Excel.XML.J ...
- 最全总结 | 聊聊 Python 数据处理全家桶(Sqlite篇)
1. 前言 上篇文章 聊到 Python 处理 Mysql 数据库最常见的两种方式,本篇文章继续说另外一种比较常用的数据库:Sqlite Sqlite 是一种 嵌入式数据库,数据库就是一个文件,体积很 ...
随机推荐
- KoaHub.js:使用ES6/7特性开发Node.js框架
KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架.可以直接在项目里使用 ES6/7(Generator Function, Class, Async & ...
- VMware10虚拟机安装mac os x 10.9
身边越来越多盆友们购进mac本子,不断地诱惑着小编,近日一直想着买一台mac本子装逼,后来想想用来开发(非ios)可能会遇着各种问题,就先在虚拟机上玩玩看,毕竟1,2万RMB不是小数. 在mac os ...
- React中父组件与子组件之间的数据传递和标准化的思考
React中父组件与子组件之间的数据传递的的实现大家都可以轻易做到,但对比很多人的实现方法,总是会有或多或少的差异.在一个团队中,这种实现的差异体现了每个人各自的理解的不同,但是反过来思考,一个团队用 ...
- (20)IO流之SequenceInputStream 序列流
序列流,对多个流进行合并. SequenceInputStream 表示其他输入流的逻辑串联.它从输入流的有序集合开始,并从第一个输入流开始读取,直到到达文件末尾,接着从第二个输入流读取,依次类推,直 ...
- ngrok localhost和http 的转换
得益于老大的教导,今天又接触到一个有意思的东西,希望分享出来,供大家玩耍----“ngrok”: 乍一看还以为是angualar的新玩意,其实不是.这这家伙可以使本地开发的web应用,不用打包上传,也 ...
- Omi框架Store体系的前世今生
原文链接-https://github.com/AlloyTeam/omi Store 体系 先说说Store系统是干什么的!为什么要造这样一个东西?能够系统架构带来什么? 当我们组件之间,拥有共享的 ...
- MVC插件实现
本人第一篇随笔,在园子里逛了这么久,今天也记录一篇自己的劳动成果,也是给自己以后留个记录. 最近领导让我搞一下插件化,就是实现多个web工程通过配置文件进行组装.之前由于做过一个简单的算是有点经验,当 ...
- HTML 部分常用属性、组成属性|...超链接、路径、锚点、列表、滚动、URL编码、表格、表单、GET和POST
URL地址 就是我们所说的网址:www.jd.com 浏览器内核,渲染引擎 Ie内核:triteent 谷歌/欧鹏:blink 火狐:gecko 苹果:webkit 渲染引擎是出现兼容性的根本问题 - ...
- Linux中的sed命令
sed - stream editor for filtering and transforming text 流编辑器的过滤和转换文本 sed [-nerf] [动作] 参数: -i 修改源文件 危 ...
- 受限玻尔兹曼机(RBM)原理总结
在前面我们讲到了深度学习的两类神经网络模型的原理,第一类是前向的神经网络,即DNN和CNN.第二类是有反馈的神经网络,即RNN和LSTM.今天我们就总结下深度学习里的第三类神经网络模型:玻尔兹曼机.主 ...