numpy的索引-【老鱼学numpy】
简单的索引值
import numpy as np
a = np.arange(3, 15).reshape(3, 4)
print("a=")
print(a)
print("第2行的数据:", a[2])
print("第2行第3列的数据:", a[2][3])
输出为:
a=
[[ 3 4 5 6]
[ 7 8 9 10]
[11 12 13 14]]
第2行的数据: [11 12 13 14]
第2行第3列的数据: 14
对于获取第2行第3列的数据,我们还可以用如下的方式来获取:
print("第2行第3列的数据:", a[2, 3])
数据切片
用冒号索引可以对数据进行切片。
import numpy as np
a = np.arange(3, 15).reshape(3, 4)
print("a=")
print(a)
print("第2行所有数:", a[2, :])
输出为:
a=
[[ 3 4 5 6]
[ 7 8 9 10]
[11 12 13 14]]
第2行所有数: [11 12 13 14]
上面用冒号来对数据选择进行了占位。
如果我们想要获得第1列的所有数:
import numpy as np
a = np.arange(3, 15).reshape(3, 4)
print("a=")
print(a)
print("第1列所有数:", a[:, 1])
输出为第1列的所有数:
a=
[[ 3 4 5 6]
[ 7 8 9 10]
[11 12 13 14]]
第1列所有数: [ 4 8 12]
获取第1行从第2列到第4列的值:
import numpy as np
a = np.arange(3, 15).reshape(3, 4)
print("a=")
print(a)
print("第1行从第2列到第4列的值:", a[1, 2:4])
输出为:
a=
[[ 3 4 5 6]
[ 7 8 9 10]
[11 12 13 14]]
第1行从第1列到第2列的值: [ 9 10]
把数据变平
把数据变平的意思是:如果是多维数组,则把数组中的每个元素平铺开来,变成一维数据,这样便于用索引值进行访问。
例如:
import numpy as np
a = np.arange(3, 15).reshape(3, 4)
print("a=")
print(a)
print("flatten=", a.flatten())
输出:
a=
[[ 3 4 5 6]
[ 7 8 9 10]
[11 12 13 14]]
flatten= [ 3 4 5 6 7 8 9 10 11 12 13 14]
也可以用a.flat返回一个迭代器来变量其中的元素:
import numpy as np
a = np.arange(3, 15).reshape(3, 4)
print("a=")
print(a)
for v in a.flat:
print(v, end=',')
输出为:
a=
[[ 3 4 5 6]
[ 7 8 9 10]
[11 12 13 14]]
3,4,5,6,7,8,9,10,11,12,13,14,
numpy的索引-【老鱼学numpy】的更多相关文章
- python开发环境搭建及numpy基本属性-【老鱼学numpy】
目的 本节我们将介绍如何搭建python的开发环境以及numpy的基本属性,这样可以检验我们的numpy是否安装正确了. python开发环境的搭建 工欲善其事必先利其器,我用得比较顺手的是Intel ...
- numpy安装-【老鱼学numpy】
要玩numpy,就得要安装numpy. 安装python 3.6.3 64位 首先需要安装python,安装python的具体方法这里就不细讲了. 可以到官网上下载相应的python版本就可以了,目前 ...
- numpy有什么用【老鱼学numpy】
老鱼为了跟上时代潮流,也开始入门人工智能.机器学习了,瞬时觉得自己有点高大上了:). 从机器学习的实用系列出发,我们会以numpy => pandas => scikit-learn =& ...
- numpy的基础运算-【老鱼学numpy】
概述 本节主要讲解numpy数组的加减乘除四则运算. np.array()返回的是numpy的数组,官方称为:ndarray,也就是N维数组对象(矩阵),N-dimensional array obj ...
- numpy创建array【老鱼学numpy】
在上一篇文章中,我们已经看到了如何通过numpy创建numpy中的数组,这里再重复一下: import numpy as np # 数组 a = [[1, 2, 3], [4, 5, 6]] prin ...
- numpy的基础运算2-【老鱼学numpy】
numpy的基础运算中还有很多运算,我们这里再记录一些. 最小/大值索引 前面一篇博文中我们讲述过如何获得数组中的最小值,这里我们获得最小/大值的索引值,也就是这个最小/大值在整个数组中位于第几位. ...
- numpy的array合并-【老鱼学numpy】
概述 本节主要讲述如何把两个数组按照行或列进行合并. 按行进行上下合并 例如: import numpy as np a = np.array([1, 1, 1]) b = np.array([2, ...
- numpy array分割-【老鱼学numpy】
有合并,就有分割. 本节主要讲述如何通过numpy对数组进行横向/纵向分割. 横向/纵向分割数组 首先创建一个6行4列的数组,然后我们对此数组按照横向进行切割,分成3块,这样每块应该有2行,见例子: ...
- numpy array的复制-【老鱼学numpy】
对象的引用 看例子: a = np.array([0, 1, 2, 3]) b = a a[0] = 5 print("b=", b) # 判断a和b是否是同样的地址 print( ...
随机推荐
- luogu5316
P5316 恋恋的数学题 题目背景 恋恋是个可爱的女孩子,最近她沉迷了做数学题. 题目描述 现在恋恋正在处理的题目十分简单:现在有k \space (2\leq k\leq 4)k (2≤k≤4)个数 ...
- jsp篇 之 jsp中的注释
Jsp中的注释: 第一种: <!-- html/xml中的注释方式 --> 特点: 1.用户在浏览器中右键查看源代码 [能] 看到这个注释. 2.在服务器端,这个jsp页面被翻译成的jav ...
- 六、Java多人博客系统-2.0版本-代码实现
1.前后端分离,后端使用spring boot,只负责提供数据,对外暴露Restful API.前端使用vue,只负责展示数据和向后台提交数据. 2.数据库使用mariadb,存储所有数据. 3.前端 ...
- POJChallengeRound2 Tree 【数学期望】
题目分析: 我们令$G(x)$表示前$x$个点的平均深度,$F(x)$表示第$x$个点的期望深度. 有$F(x) = G(x-1)+1$,$G(x) = G(x-1)+\frac{1}{x}$ 所以答 ...
- Flask 构建微电影视频网站(四)
后台管理 实现后台管理系统使用flask sqlalchemy结合mysql数据库进行增删改查操作.分页的使用.路由装饰器定义.模板中变量调用.登录会话机制.上传文件.flask wtforms表单使 ...
- Euler Circuit UVA - 10735(混合图输出路径)
就是求混合图是否存在欧拉回路 如果存在则输出一组路径 (我就说嘛 咱的代码怎么可能错.....最后的输出格式竟然w了一天 我都没发现) 解析: 对于无向边定向建边放到网络流图中add(u, v, 1) ...
- Dynamic Rankings ZOJ - 2112(主席树+树状数组)
The Company Dynamic Rankings has developed a new kind of computer that is no longer satisfied with t ...
- python+turtle 笔记
用Python+turtle绘制佩琪: from turtle import * def nose(x,y):#鼻子 penup()#提起笔 goto(x,y)#定位 pendown()#落笔,开始画 ...
- Django_restframework+vue解决跨域问题
1. 安装 pip3 install django-cors-headers 2.在settings.py里设置 INSTALLED_APPS = ( ... 'corsheaders', ... ) ...
- CentOS Linux安装python3
本文的方法是在CentOS上新装了python3,如果本机安装了python2则保留,因为可能有程序依赖目前的python2环境,比如yum!!!!! 一.安装python3.7 1. 安装依赖环境 ...