简单的索引值

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】的更多相关文章

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

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

  2. numpy安装-【老鱼学numpy】

    要玩numpy,就得要安装numpy. 安装python 3.6.3 64位 首先需要安装python,安装python的具体方法这里就不细讲了. 可以到官网上下载相应的python版本就可以了,目前 ...

  3. numpy有什么用【老鱼学numpy】

    老鱼为了跟上时代潮流,也开始入门人工智能.机器学习了,瞬时觉得自己有点高大上了:). 从机器学习的实用系列出发,我们会以numpy => pandas => scikit-learn =& ...

  4. numpy的基础运算-【老鱼学numpy】

    概述 本节主要讲解numpy数组的加减乘除四则运算. np.array()返回的是numpy的数组,官方称为:ndarray,也就是N维数组对象(矩阵),N-dimensional array obj ...

  5. numpy创建array【老鱼学numpy】

    在上一篇文章中,我们已经看到了如何通过numpy创建numpy中的数组,这里再重复一下: import numpy as np # 数组 a = [[1, 2, 3], [4, 5, 6]] prin ...

  6. numpy的基础运算2-【老鱼学numpy】

    numpy的基础运算中还有很多运算,我们这里再记录一些. 最小/大值索引 前面一篇博文中我们讲述过如何获得数组中的最小值,这里我们获得最小/大值的索引值,也就是这个最小/大值在整个数组中位于第几位. ...

  7. numpy的array合并-【老鱼学numpy】

    概述 本节主要讲述如何把两个数组按照行或列进行合并. 按行进行上下合并 例如: import numpy as np a = np.array([1, 1, 1]) b = np.array([2, ...

  8. numpy array分割-【老鱼学numpy】

    有合并,就有分割. 本节主要讲述如何通过numpy对数组进行横向/纵向分割. 横向/纵向分割数组 首先创建一个6行4列的数组,然后我们对此数组按照横向进行切割,分成3块,这样每块应该有2行,见例子: ...

  9. numpy array的复制-【老鱼学numpy】

    对象的引用 看例子: a = np.array([0, 1, 2, 3]) b = a a[0] = 5 print("b=", b) # 判断a和b是否是同样的地址 print( ...

随机推荐

  1. QT出现应用程序无法正常启动0xc000007b的错误

    最近做了一个成绩管理系统,打包好后,运行他的exe可执行文件时,出现了如下图的错误提示: 在网上查阅了很多资料,其中有篇文章给了我很大的启示和帮助,文章地址http://www.cnblogs.com ...

  2. js 图片瀑布流效果实现

    /** * Created by wwtliu on 14/9/5. */$(document).ready(function(){ $(window).on("load",fun ...

  3. poj-2516(最小费用流)

    题意:有n个商店,每个商店有k种货物,每个货物需要a[n][k]个,有m个仓库,每个仓库也有k种货物,每个货物有b[m][k]个,然后k个矩阵,每个矩阵都是n*m的,第i行第j列表示从仓库j到商店i每 ...

  4. Java基础-1

    基础知识 1.进制 1.十进制 2.二进制 3.十六进制 2.十六进制转换 二进制转换 十进制转换

  5. ☆ [HNOI2012] 永无乡 「平衡树启发式合并」

    题目类型:平衡树启发式合并 传送门:>Here< 题意:节点可以连边(不能断边),询问任意两个节点的连通性与一个连通块中排名第\(k\)的节点 解题思路 如果不需要询问排名,那么并查集即可 ...

  6. 机器学习---线性回归(Machine Learning Linear Regression)

    线性回归是机器学习中最基础的模型,掌握了线性回归模型,有利于以后更容易地理解其它复杂的模型. 线性回归看似简单,但是其中包含了线性代数,微积分,概率等诸多方面的知识.让我们先从最简单的形式开始. 一元 ...

  7. tmux 使用说明

    安装Mac:brew install tmux若未安装libevent,需要先brew install libeventCentos:yum -y install tmuxUbuntu:apt-get ...

  8. 用Spring构建企业Java应用程序的方法

    https://mp.weixin.qq.com/s?__biz=MzU0MDEwMjgwNA==&mid=2247484965&idx=1&sn=ca6b847c65e506 ...

  9. python django初识ajax

    什么是json json是轻量级文本数据交互格式 json独立语言 符合的json对象 ["one", "two", "three"] { ...

  10. JProfiler性能分析工具

    1.简介 JProfiler是一个商业授权的Java剖析工具,用于分析Java EE和Java SE应用程序. 2.JVMTI JDK本身定义了目标明确并功能完善的JNI(Java Native In ...