欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python数据分析-numpy模块基础知识(3)

程序员文章站 2022-04-16 08:21:13
呀~博主是正在学习数据分析的一员,记录的是自己学习过程中总结的知识点,肯定有不完善的地方,如有问题可以私聊我改正,共同学习进步。希望大家都能保持学习的热情,坚持自己,不断超越自己!博客地址:qxi的博客//今天这一篇文章主要介绍的是array的索引//首先,注意索引是从0开始的,存在第0行第0列array[m,n] 表示提取第m行n列的元素,符号“:”则类似于python列表中的切片功能,“左闭右开”①提取单行或者单列,array[m:]以及array[:n]分别表示提取第m行,第n列imp....

呀~博主是正在学习数据分析的一员,记录的是自己学习过程中总结的知识点,肯定有不完善的地方,如有问题可以私聊我改正,共同学习进步。希望大家都能保持学习的热情,坚持自己,不断超越自己!
博客地址:qxi的博客

前面已经介绍了numpy的一些基础知识:
numpy模块基础知识(1)
numpy模块基础知识(2)

#今天这一篇文章主要介绍的是array的索引以及array的迭代#
首先,注意索引是从0开始的,存在第0行第0列
array[m,n] 表示提取第m行n列的元素,符号“:”则类似于python列表中的切片功能,“左闭右开

  1. array的索引

①提取单行或者单列,array[m:]以及array[:n]分别表示提取第m行,第n列

import numpy as np
A=np.arange(3,15).reshape((3,4))
print(A)
print(A[1,:])   #表示第1行整行,或者直接A[1]也行
print(A[:,1])   #第1列整列

运行结果:

[[ 3  4  5  6]
 [ 7  8  9 10]
 [11 12 13 14]]
[ 7  8  9 10]
[ 4  8 12]

②利用array[m,n] 提取第m行n列的元素

import numpy as np
A=np.arange(3,15).reshape((3,4))
print(A)
print(A[2,1])  #第2行第1列的数

运行结果:

[[ 3  4  5  6]
 [ 7  8  9 10]
 [11 12 13 14]]
12

③运用到切片符号

import numpy as np
A=np.arange(3,15).reshape((3,4))
print(A)
print(A[1,1:2])#1:2左要取右不用取,取第一行第一列的数,为8
print(A[1,1:3])#取第1行第1,2列的数,为8,9

运行结果:

[[ 3  4  5  6]
 [ 7  8  9 10]
 [11 12 13 14]]
[8]
[8 9]
  1. array的迭代

主要运用for循环语句对array进行迭代,意思就是取出每一行,每一列或者每个元素。
①迭代矩阵的行,直接对原矩阵进行for遍历每一行

import numpy as np
A=np.arange(3,15).reshape((3,4))
print(A)
for row in A:
    print(row) #对原矩阵迭代行

运行结果:

[[ 3  4  5  6]
 [ 7  8  9 10]
 [11 12 13 14]]   #原矩阵
[3 4 5 6]
[ 7  8  9 10]
[11 12 13 14]   #取出每一行

②迭代矩阵的列,要先将原矩阵进行转置,使得行变列,列变行,这样再进行遍历取出的就是原矩阵的列啦。

import numpy as np
A=np.arange(3,15).reshape((3,4))
print(A)
for column in A.T:#先对原矩阵进行转置(行变列,列变行了)
    print(column)

运行结果:

[[ 3  4  5  6]
 [ 7  8  9 10]
 [11 12 13 14]]   #原矩阵
[ 3  7 11]
[ 4  8 12]
[ 5  9 13]
[ 6 10 14] #取出每一列

③迭代每一项,先利用flatten()将原矩阵变成一维数组再进行遍历

import numpy as np
A=np.arange(3,15).reshape((3,4))
print(A)
print(A.flatten()) #打印出一维数组
for item in A.flatten():
    print(item) #对原矩阵迭代每一项

运行结果:

  [[ 3  4  5  6]
 [ 7  8  9 10]
 [11 12 13 14]]   #原矩阵
[ 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 #取出每一项

码字不易,如果觉得对你有帮助的话就点个赞呗,谢谢~

本文地址:https://blog.csdn.net/hswqxi/article/details/107333341