1.数组的切片操作,主要是用来抓取数组中的一些数据,或者对其进行修改
    1. 一维数组
        和python_list的操作方式相同
    2. 二维数组
        查看下方是实例
    3. 多维数组(这里我们使用三维数组进行操作显示)
        查看下方是实例
        通过以上我们可以总结出来,虽然当维数较多的时候,看起来挺吓人,但是在每一个维度上,都可以通过该维度的切片一一处理出来

2.数组的shape转换
    1. array.shape(shape=)
        shape:就是想转换成的shape,这里需要注意的是,这是按照顺序转化的
        return:输出一个转化为shape的array。不会对原来的array进行转化
    2. array.size(shape=)
        shape:就是想转换成的shape,这里需要注意的是,这是按照顺序转化的
        return:没有输出,直接对array进行转化
    3. array.T
        这里直接是对array进行了转置,即行变成列,列变成行。
        注意:只能对二维数组进行处理,因此又叫做矩阵的转置。
        return:返回一个转置后的数组,并不会对原始数组进行改变

二维数组的切片操作

代码:

import numpy as np# 数据获取
np.random.seed(50)
data = np.random.normal(loc=0, scale=2, size=8*10).reshape((8, 10))
print('data\n', data)# 这里我们取出第5行的前3列
print(data[4, :3])# 这里我们修改取出的数据为100(这里就利用了numpy的广播效应)
data[4, :3] = 100
print('修改后的data\n',data)

输出:

data[[-3.12070422 -0.06195521 -1.24185685 -2.92916097  2.82389224 -0.95346429-1.56093843  2.14053547 -2.56458519 -2.6549578 ][ 0.25267528  1.72438743  1.39347393 -0.66913037 -1.99505213  3.197816596.62815069  1.97554092  0.24773251  1.48557079][-0.7879117   0.29623164 -0.82446891 -0.32143012  0.27906295  0.57093874-0.56252399  3.42181463 -0.29953328  1.38061344][ 2.19041902  2.67681741 -2.73796334  0.97285526  1.50704336  0.72692919-0.62942096  2.74656234 -1.24883433  0.75150799][-0.40083263  1.48607612  1.71472391 -3.01237857 -3.33270434 -0.43798961-0.71771686  0.75705539  1.36843073 -2.33571213][-1.58643324 -0.07767079  5.41050999 -2.98277701  0.19195586  1.049373421.631331    0.10301161 -0.32911072  0.55639883][ 0.1742294   0.06853674  1.49313783 -1.88727517 -0.49155333  2.216241920.07801578 -0.42653337 -1.78190923 -0.54129268][ 0.44448744  0.50362719  1.41585217  0.98797966  2.94200334 -1.165238944.13163899  2.17566777  1.61037808 -3.17576968]]
[-0.40083263  1.48607612  1.71472391]
[[-3.12070422e+00 -6.19552069e-02 -1.24185685e+00 -2.92916097e+002.82389224e+00 -9.53464287e-01 -1.56093843e+00  2.14053547e+00-2.56458519e+00 -2.65495780e+00][ 2.52675279e-01  1.72438743e+00  1.39347393e+00 -6.69130370e-01-1.99505213e+00  3.19781659e+00  6.62815069e+00  1.97554092e+002.47732515e-01  1.48557079e+00][-7.87911701e-01  2.96231636e-01 -8.24468906e-01 -3.21430122e-012.79062950e-01  5.70938737e-01 -5.62523985e-01  3.42181463e+00-2.99533278e-01  1.38061344e+00][ 2.19041902e+00  2.67681741e+00 -2.73796334e+00  9.72855255e-011.50704336e+00  7.26929187e-01 -6.29420962e-01  2.74656234e+00-1.24883433e+00  7.51507995e-01][ 1.00000000e+02  1.00000000e+02  1.00000000e+02 -3.01237857e+00-3.33270434e+00 -4.37989605e-01 -7.17716858e-01  7.57055387e-011.36843073e+00 -2.33571213e+00][-1.58643324e+00 -7.76707925e-02  5.41050999e+00 -2.98277701e+001.91955864e-01  1.04937342e+00  1.63133100e+00  1.03011608e-01-3.29110719e-01  5.56398833e-01][ 1.74229404e-01  6.85367384e-02  1.49313783e+00 -1.88727517e+00-4.91553333e-01  2.21624192e+00  7.80157810e-02 -4.26533373e-01-1.78190923e+00 -5.41292676e-01][ 4.44487437e-01  5.03627194e-01  1.41585217e+00  9.87979663e-012.94200334e+00 -1.16523894e+00  4.13163899e+00  2.17566777e+001.61037808e+00 -3.17576968e+00]]

三维数组的切片操作

代码:

import numpy as np# 数据获取
np.random.seed(50)
data = np.random.normal(loc=0, scale=2, size=9*10).reshape((3, 3, 10))
print('data\n', data)# 这里我们取出一维的第2行的前五列
print(data[0, 1, :5])# 这里我们修改取出的数据为100(这里就利用了numpy的广播效应)
data[0, 1, :5] = 100
print('修改后的data\n',data)

输出:

data[[[-3.12070422 -0.06195521 -1.24185685 -2.92916097  2.82389224-0.95346429 -1.56093843  2.14053547 -2.56458519 -2.6549578 ][ 0.25267528  1.72438743  1.39347393 -0.66913037 -1.995052133.19781659  6.62815069  1.97554092  0.24773251  1.48557079][-0.7879117   0.29623164 -0.82446891 -0.32143012  0.279062950.57093874 -0.56252399  3.42181463 -0.29953328  1.38061344]][[ 2.19041902  2.67681741 -2.73796334  0.97285526  1.507043360.72692919 -0.62942096  2.74656234 -1.24883433  0.75150799][-0.40083263  1.48607612  1.71472391 -3.01237857 -3.33270434-0.43798961 -0.71771686  0.75705539  1.36843073 -2.33571213][-1.58643324 -0.07767079  5.41050999 -2.98277701  0.191955861.04937342  1.631331    0.10301161 -0.32911072  0.55639883]][[ 0.1742294   0.06853674  1.49313783 -1.88727517 -0.491553332.21624192  0.07801578 -0.42653337 -1.78190923 -0.54129268][ 0.44448744  0.50362719  1.41585217  0.98797966  2.94200334-1.16523894  4.13163899  2.17566777  1.61037808 -3.17576968][ 2.461771   -4.74690676 -0.06222194 -7.61978076 -0.398099380.70086148 -0.10510157 -1.26856217 -0.72586221 -5.14183952]]]
[ 0.25267528  1.72438743  1.39347393 -0.66913037 -1.99505213]
修改后的data[[[-3.12070422e+00 -6.19552069e-02 -1.24185685e+00 -2.92916097e+002.82389224e+00 -9.53464287e-01 -1.56093843e+00  2.14053547e+00-2.56458519e+00 -2.65495780e+00][ 1.00000000e+02  1.00000000e+02  1.00000000e+02  1.00000000e+021.00000000e+02  3.19781659e+00  6.62815069e+00  1.97554092e+002.47732515e-01  1.48557079e+00][-7.87911701e-01  2.96231636e-01 -8.24468906e-01 -3.21430122e-012.79062950e-01  5.70938737e-01 -5.62523985e-01  3.42181463e+00-2.99533278e-01  1.38061344e+00]][[ 2.19041902e+00  2.67681741e+00 -2.73796334e+00  9.72855255e-011.50704336e+00  7.26929187e-01 -6.29420962e-01  2.74656234e+00-1.24883433e+00  7.51507995e-01][-4.00832630e-01  1.48607612e+00  1.71472391e+00 -3.01237857e+00-3.33270434e+00 -4.37989605e-01 -7.17716858e-01  7.57055387e-011.36843073e+00 -2.33571213e+00][-1.58643324e+00 -7.76707925e-02  5.41050999e+00 -2.98277701e+001.91955864e-01  1.04937342e+00  1.63133100e+00  1.03011608e-01-3.29110719e-01  5.56398833e-01]][[ 1.74229404e-01  6.85367384e-02  1.49313783e+00 -1.88727517e+00-4.91553333e-01  2.21624192e+00  7.80157810e-02 -4.26533373e-01-1.78190923e+00 -5.41292676e-01][ 4.44487437e-01  5.03627194e-01  1.41585217e+00  9.87979663e-012.94200334e+00 -1.16523894e+00  4.13163899e+00  2.17566777e+001.61037808e+00 -3.17576968e+00][ 2.46177100e+00 -4.74690676e+00 -6.22219402e-02 -7.61978076e+00-3.98099383e-01  7.00861484e-01 -1.05101570e-01 -1.26856217e+00-7.25862211e-01 -5.14183952e+00]]]

数组的shape转换

代码:

import numpy as npnp.random.seed(22)
data = np.random.normal(loc=0, scale=2, size=90).reshape(9, 10)
print('data:\n', data)# reshape转换
data.reshape((10, 9))
print('data:\n', data)# resize转换
data.resize((10, 9))
print('data:\n', data)# T转置
data.resize((10, 9))
data = data.T
print('data:\n', data)

输出:

data:[[-0.18389984 -2.92670131  2.16358336 -0.47865034 -0.98225827 -2.004544021.83764301 -2.2072642   1.25298691 -1.12302756][ 0.05771024 -0.46153438  1.17550443  1.50463516 -2.11700511  2.111944831.49550053  2.12935318  3.04025918 -2.97720587][ 3.71997978 -3.19722605 -1.29214723  0.67465     2.09345745  1.258286680.72611819  1.11149939 -2.17709906  0.04738954][ 4.99835328 -4.98006079 -0.46972477 -0.19512692 -1.77305868 -0.273426480.20395785 -0.50185907 -0.15762461 -2.17032833][ 1.1898569  -1.27781614 -2.21567372  4.21229151 -1.13477554 -0.95989959-3.84645971  0.79917708 -2.09636774 -1.38775741][ 1.49067829  1.07381999 -1.46544355  1.11143126  0.8645786  -0.27160796-1.88221218  0.96953473 -3.06564291  0.80995778][ 0.02565225 -2.46343112 -2.10617005  5.03244365 -4.07805701  0.18897462-0.62964667  0.98062943  0.70995238  1.90142269][ 1.5207436   0.02300725 -2.75211392 -0.54310937  1.0845041   1.071044422.31999608 -0.3300101  -2.35880513 -1.0905979 ][ 0.54100534  1.96047512  2.0137768   1.56431251 -2.49718332 -0.847666891.10521631  0.65920685  1.72623658 -2.45475605]]
data:[[-0.18389984 -2.92670131  2.16358336 -0.47865034 -0.98225827 -2.004544021.83764301 -2.2072642   1.25298691 -1.12302756][ 0.05771024 -0.46153438  1.17550443  1.50463516 -2.11700511  2.111944831.49550053  2.12935318  3.04025918 -2.97720587][ 3.71997978 -3.19722605 -1.29214723  0.67465     2.09345745  1.258286680.72611819  1.11149939 -2.17709906  0.04738954][ 4.99835328 -4.98006079 -0.46972477 -0.19512692 -1.77305868 -0.273426480.20395785 -0.50185907 -0.15762461 -2.17032833][ 1.1898569  -1.27781614 -2.21567372  4.21229151 -1.13477554 -0.95989959-3.84645971  0.79917708 -2.09636774 -1.38775741][ 1.49067829  1.07381999 -1.46544355  1.11143126  0.8645786  -0.27160796-1.88221218  0.96953473 -3.06564291  0.80995778][ 0.02565225 -2.46343112 -2.10617005  5.03244365 -4.07805701  0.18897462-0.62964667  0.98062943  0.70995238  1.90142269][ 1.5207436   0.02300725 -2.75211392 -0.54310937  1.0845041   1.071044422.31999608 -0.3300101  -2.35880513 -1.0905979 ][ 0.54100534  1.96047512  2.0137768   1.56431251 -2.49718332 -0.847666891.10521631  0.65920685  1.72623658 -2.45475605]]
data:[[-0.18389984 -2.92670131  2.16358336 -0.47865034 -0.98225827 -2.004544021.83764301 -2.2072642   1.25298691][-1.12302756  0.05771024 -0.46153438  1.17550443  1.50463516 -2.117005112.11194483  1.49550053  2.12935318][ 3.04025918 -2.97720587  3.71997978 -3.19722605 -1.29214723  0.674652.09345745  1.25828668  0.72611819][ 1.11149939 -2.17709906  0.04738954  4.99835328 -4.98006079 -0.46972477-0.19512692 -1.77305868 -0.27342648][ 0.20395785 -0.50185907 -0.15762461 -2.17032833  1.1898569  -1.27781614-2.21567372  4.21229151 -1.13477554][-0.95989959 -3.84645971  0.79917708 -2.09636774 -1.38775741  1.490678291.07381999 -1.46544355  1.11143126][ 0.8645786  -0.27160796 -1.88221218  0.96953473 -3.06564291  0.809957780.02565225 -2.46343112 -2.10617005][ 5.03244365 -4.07805701  0.18897462 -0.62964667  0.98062943  0.709952381.90142269  1.5207436   0.02300725][-2.75211392 -0.54310937  1.0845041   1.07104442  2.31999608 -0.3300101-2.35880513 -1.0905979   0.54100534][ 1.96047512  2.0137768   1.56431251 -2.49718332 -0.84766689  1.105216310.65920685  1.72623658 -2.45475605]]
data:[[-0.18389984 -1.12302756  3.04025918  1.11149939  0.20395785 -0.959899590.8645786   5.03244365 -2.75211392  1.96047512][-2.92670131  0.05771024 -2.97720587 -2.17709906 -0.50185907 -3.84645971-0.27160796 -4.07805701 -0.54310937  2.0137768 ][ 2.16358336 -0.46153438  3.71997978  0.04738954 -0.15762461  0.79917708-1.88221218  0.18897462  1.0845041   1.56431251][-0.47865034  1.17550443 -3.19722605  4.99835328 -2.17032833 -2.096367740.96953473 -0.62964667  1.07104442 -2.49718332][-0.98225827  1.50463516 -1.29214723 -4.98006079  1.1898569  -1.38775741-3.06564291  0.98062943  2.31999608 -0.84766689][-2.00454402 -2.11700511  0.67465    -0.46972477 -1.27781614  1.490678290.80995778  0.70995238 -0.3300101   1.10521631][ 1.83764301  2.11194483  2.09345745 -0.19512692 -2.21567372  1.073819990.02565225  1.90142269 -2.35880513  0.65920685][-2.2072642   1.49550053  1.25828668 -1.77305868  4.21229151 -1.46544355-2.46343112  1.5207436  -1.0905979   1.72623658][ 1.25298691  2.12935318  0.72611819 -0.27342648 -1.13477554  1.11143126-2.10617005  0.02300725  0.54100534 -2.45475605]]

学习地址:

黑马程序员Python教程,4天快速入门Python数据挖掘,系统精讲+实战案例_哔哩哔哩_bilibili

运算库之numpy(数组的切片操作和数组shape的转换)相关推荐

  1. Go进阶(5): 数组与切片+多维数组+map切片

    1. 数组array 数组可以存放多个同一类型数据,数组也是一种数据类型,在Go中,数组是值类型.与C++一致 长度是的固定的,不能够动态变化 var arr [] int 相当于slice切片 va ...

  2. 如何统计php数组值的和,php数组键值操作和数组统计函数-函数

    1.数组函数//作用:提供了很多官方写的很多有用的代码段,提高编写速度 1)数组的键值操作函数 array_values();//获取数组中的值 array_keys();//获取数组中的键 in_a ...

  3. python数组的切片操作_对Python 数组的切片操作

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

  4. java数组元素替换操作_js数组操作(添加、删除、替换元素)

    1.添加元素 函数:push(para),参数说明para要添加的元素 示例: var lang = ["php","java","javascrip ...

  5. Numpy 笔记: 多维数组的切片(slicing)和索引(indexing)【转】

    目录 切片(slicing)操作 索引(indexing) 操作 最简单的情况 获取多个元素 切片和索引的同异 切片(slicing)操作 Numpy 中多维数组的切片操作与 Python 中 lis ...

  6. 【Python】Numpy数组的切片、索引详解:取数组的特定行列

    [Python]Numpy数组的切片.索引详解:取数组的特定行列 文章目录 [Python]Numpy数组的切片.索引详解:取数组的特定行列 1. 介绍 2. 切片索引 2.1 切片索引先验知识 2. ...

  7. 数据分析:numpy和pandas基础操作详解

    数据处理基础 numpy基础 1.numpy创建数组及基础属性 2.数组的特点 3.创建常见数组 4.数组数据类型 5.生成随机数 6.一维数组索引 7.布尔索引 8. 多维数组的索引 9.实际问题 ...

  8. python【Numpy科学计算库】Numpy的超实用基础详细教程(看不懂你来打我)

    文章目录 Numpy简单介绍 1.Numpy是什么 2. 多维数组 numpy数据类型设定与转换 numpy索引与切片 多维数组索引.切片 数组文件输入输出 使用numpy.arange方法 使用nu ...

  9. Go 学习笔记(11)— 切片定义、切片初始化、数组和切片差异、字符串和切片转换、len()、cap()、空 nil 切片、append()、copy() 函数、删除切片元素

    1. 切片定义 Go 语言切片是对数组的抽象. Go 中提供了一种灵活,功能强悍的内置类型切片("动态数组"),与数组相比切片的长度是不固定的,可以追加元素,在追加时可能使切片的容 ...

最新文章

  1. Miller方法产生、检验素数
  2. 人群密度估计--CrowdNet: A Deep Convolutional Network for Dense Crowd Counting
  3. 但是如果你按照官网的说明进行输入:比如 [{0: 1, 1: 1}, {0: 1, 1: 5}, {0: 1, 1: 1}, {0: 1, 1: 1}]就会报错,经过实践,多分类希望给各个label不
  4. Git设置忽略文件/文件夹
  5. 主数据管理(MDM)的七个最佳实践
  6. 使用TortoiseGit,设置ssh方式连接git仓库
  7. php支持cs吗,关于composer、phpmd和phpcs于windows中的安装与使用方法
  8. moore 数据集_警报数据集(alarm dataset)_机器学习_科研数据集
  9. IntelliJ IDEA for Mac中的Maven操作窗口详解
  10. python数据挖掘学习笔记】十四.Scipy调用curve_fit实现曲线拟合
  11. java语言实现常用算法(排序和查找)
  12. 2021级C语言大作业 - 一笔画
  13. 小故事:在缺陷中发现长处
  14. android imageview 图片模糊,imageview实现高斯模糊
  15. 共享计算机桌面,DeskTopShare桌面屏幕共享软件
  16. 图像处理中的数学原理详解
  17. 解决spring-data-jpa 级联添加时,主表放弃对外键维护时外键字段为null
  18. 帝国cms 自动生成html,帝国cms二次开发用户访问自动生成html
  19. 软件安全开发 - 流程规范
  20. 计算机怎么转到超级用户,电脑系统管理员权限怎么设置为超级管理员权限

热门文章

  1. linux切割日志方法,Linux下nginx生成日志自动切割的实现方法
  2. 16bit的pcm双声道转单声道
  3. Polychain重仓的Findora公链,想带领DeFi脱虚向实
  4. C语言模拟鼠标连点器
  5. 手把手教你如何绘制一辆,“单身自行车”,哈哈哈!
  6. 视频特效-使用ffmpeg滤镜
  7. 01、java02-运算符 流程控制 方法
  8. 如何使用可编程无线SIM和Arduino MKR GSM 1400播放MP3文件
  9. 具体分析contrex-A9的汇编代码__switch_to(进程切换)
  10. 深度学习(PyTorch)——Transforms的使用方法与技巧