赞
踩
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.19781659 6.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.04937342 1.631331 0.10301161 -0.32911072 0.55639883] [ 0.1742294 0.06853674 1.49313783 -1.88727517 -0.49155333 2.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]] [-0.40083263 1.48607612 1.71472391] [[-3.12070422e+00 -6.19552069e-02 -1.24185685e+00 -2.92916097e+00 2.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+00 2.47732515e-01 1.48557079e+00] [-7.87911701e-01 2.96231636e-01 -8.24468906e-01 -3.21430122e-01 2.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-01 1.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-01 1.36843073e+00 -2.33571213e+00] [-1.58643324e+00 -7.76707925e-02 5.41050999e+00 -2.98277701e+00 1.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-01 2.94200334e+00 -1.16523894e+00 4.13163899e+00 2.17566777e+00 1.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.99505213 3.19781659 6.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.04937342 1.631331 0.10301161 -0.32911072 0.55639883]] [[ 0.1742294 0.06853674 1.49313783 -1.88727517 -0.49155333 2.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.39809938 0.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+00 2.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+02 1.00000000e+02 3.19781659e+00 6.62815069e+00 1.97554092e+00 2.47732515e-01 1.48557079e+00] [-7.87911701e-01 2.96231636e-01 -8.24468906e-01 -3.21430122e-01 2.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-01 1.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-01 1.36843073e+00 -2.33571213e+00] [-1.58643324e+00 -7.76707925e-02 5.41050999e+00 -2.98277701e+00 1.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-01 2.94200334e+00 -1.16523894e+00 4.13163899e+00 2.17566777e+00 1.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]]]
代码:
- import numpy as np
-
- np.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.00454402 1.83764301 -2.2072642 1.25298691 -1.12302756] [ 0.05771024 -0.46153438 1.17550443 1.50463516 -2.11700511 2.11194483 1.49550053 2.12935318 3.04025918 -2.97720587] [ 3.71997978 -3.19722605 -1.29214723 0.67465 2.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.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.07104442 2.31999608 -0.3300101 -2.35880513 -1.0905979 ] [ 0.54100534 1.96047512 2.0137768 1.56431251 -2.49718332 -0.84766689 1.10521631 0.65920685 1.72623658 -2.45475605]] data: [[-0.18389984 -2.92670131 2.16358336 -0.47865034 -0.98225827 -2.00454402 1.83764301 -2.2072642 1.25298691 -1.12302756] [ 0.05771024 -0.46153438 1.17550443 1.50463516 -2.11700511 2.11194483 1.49550053 2.12935318 3.04025918 -2.97720587] [ 3.71997978 -3.19722605 -1.29214723 0.67465 2.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.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.07104442 2.31999608 -0.3300101 -2.35880513 -1.0905979 ] [ 0.54100534 1.96047512 2.0137768 1.56431251 -2.49718332 -0.84766689 1.10521631 0.65920685 1.72623658 -2.45475605]] data: [[-0.18389984 -2.92670131 2.16358336 -0.47865034 -0.98225827 -2.00454402 1.83764301 -2.2072642 1.25298691] [-1.12302756 0.05771024 -0.46153438 1.17550443 1.50463516 -2.11700511 2.11194483 1.49550053 2.12935318] [ 3.04025918 -2.97720587 3.71997978 -3.19722605 -1.29214723 0.67465 2.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.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.07104442 2.31999608 -0.3300101 -2.35880513 -1.0905979 0.54100534] [ 1.96047512 2.0137768 1.56431251 -2.49718332 -0.84766689 1.10521631 0.65920685 1.72623658 -2.45475605]] data: [[-0.18389984 -1.12302756 3.04025918 1.11149939 0.20395785 -0.95989959 0.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.09636774 0.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.49067829 0.80995778 0.70995238 -0.3300101 1.10521631] [ 1.83764301 2.11194483 2.09345745 -0.19512692 -2.21567372 1.07381999 0.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]]
学习地址:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。