Numpy基础练习(七)

import numpy as np
z=np.zeros((8,8),dtype=int)
z[1::2,::2]=1
#这里的[1::2,::2]可以这么理解,1::2是指在第一行开始,然后累加2进行的,也就是,第1、3、5、7行,注意行是从第0行开始的
#::2指的是从第0列开始,累加2进行,然后对行和列相交的地方赋值为1,例如这里,第1行第0列为1
z[::2,1::2]=1
print(z)
[[0 1 0 1 0 1 0 1]
 [1 0 1 0 1 0 1 0]
 [0 1 0 1 0 1 0 1]
 [1 0 1 0 1 0 1 0]
 [0 1 0 1 0 1 0 1]
 [1 0 1 0 1 0 1 0]
 [0 1 0 1 0 1 0 1]
 [1 0 1 0 1 0 1 0]]

 #min()、max()函数

z=np.random.random((10,10))
zmin,zmax=z.min(),z.max()
print(z)
print(zmin)
print(zmax)
[[4.54913451e-01 6.01493173e-01 7.17273229e-01 8.65779618e-01
  6.66096245e-01 6.63371548e-01 9.23637202e-01 5.20073791e-01
  2.24356774e-01 5.88108694e-01]
 [2.50417885e-02 3.51377760e-01 1.90589839e-01 8.53760400e-01
  3.67145728e-01 8.66552202e-01 1.06291749e-02 9.59893989e-01
  2.83871167e-01 1.00113821e-01]
 [2.05773672e-01 8.71183728e-01 7.80934164e-01 5.67774660e-01
  3.88334468e-01 4.17074930e-01 7.19783210e-01 1.35528874e-01
  1.37852787e-01 7.41683624e-01]
 [1.70112131e-01 2.51415337e-02 6.59458204e-01 8.52037127e-01
  3.65728149e-01 6.90902849e-02 2.85686309e-01 1.63288929e-01
  3.85052780e-01 7.97267898e-01]
 [7.62146219e-01 5.39650649e-01 6.41334367e-01 8.64496544e-04
  7.07976099e-02 6.12576764e-01 3.86244092e-01 2.63078313e-01
  3.46855084e-01 2.78167335e-01]
 [6.79468785e-01 6.55185949e-01 2.48818902e-01 4.26761897e-01
  1.54109127e-01 4.08903269e-01 2.41813561e-01 6.16414663e-01
  3.85484208e-01 8.04018468e-01]
 [2.83014674e-01 6.64015026e-01 3.38489931e-01 7.93332529e-01
  7.09651685e-01 6.62547286e-01 5.71298646e-01 6.19248967e-01
  6.15071071e-01 3.83443155e-01]
 [8.87522414e-01 6.42124156e-01 5.22554615e-01 7.64105216e-01
  7.32490279e-01 1.55666796e-01 8.73059738e-01 2.26803460e-02
  6.02547108e-01 3.79661936e-01]
 [4.79975350e-03 6.08262271e-02 1.33131554e-01 2.94990743e-01
  7.56090211e-01 6.00570187e-01 3.25968354e-01 9.00046802e-01
  2.07119385e-01 7.26805450e-01]
 [6.72474136e-01 6.57637247e-01 6.10597204e-01 9.54372271e-01
  4.06517620e-01 3.63635868e-01 9.75179089e-01 6.36393910e-02
  5.98917154e-01 1.20917505e-01]]
0.0008644965444467578
0.9751790885300272

#归一化,将矩阵规格化到0~1,即最小的变成0,最大的变成1,最小与最大之间的等比缩放

z=10*np.random.random((5,5))
print(z)
zmin,zmax=z.min(),z.max()
print(zmin)
print(zmax)
z=(z-zmin)/(zmax-zmin) 
print(z)
[[7.89478778 3.32987324 6.00745622 6.11283932 3.46210465]
 [7.75884384 6.6019476  4.63078181 0.74042406 5.71276524]
 [2.78075614 9.88180413 0.53072392 2.24666475 5.23154243]
 [9.22817146 3.54934832 1.94778719 1.03058646 2.20375155]
 [2.84026671 4.03710605 3.02944637 2.68801631 8.42381378]]
0.5307239191135904
9.881804131914583
[[0.78750943 0.29933968 0.58567911 0.59694872 0.31348044]
 [0.77297165 0.64925373 0.43845821 0.02242523 0.554165  ]
 [0.24061736 1.         0.         0.18350188 0.50270326]
 [0.93010084 0.32281023 0.15154006 0.05345506 0.17891277]
 [0.24698139 0.37497081 0.26721217 0.23069981 0.84408322]]

#矩阵相加

z=np.zeros((5,5))
z+=np.arange(5)
print(np.arange(5))
print(z)
[0 1 2 3 4]
[[0. 1. 2. 3. 4.]
 [0. 1. 2. 3. 4.]
 [0. 1. 2. 3. 4.]
 [0. 1. 2. 3. 4.]
 [0. 1. 2. 3. 4.]]
import numpy as np

z = np.zeros((4, 4))
a = np.array([[1, 2, 3, 4], [2, 3, 4, 5]])

z[:2, :] += a  # Add 'a' to the first two rows of 'z'

print("a:")
print(a)
print("z after adding a:")
print(z)
a:
[[1 2 3 4]
 [2 3 4 5]]
z after adding a:
[[1. 2. 3. 4.]
 [2. 3. 4. 5.]
 [0. 0. 0. 0.]
 [0. 0. 0. 0.]]

 #生成0~10之间均匀分布的11个数,包括0和10

z=np.linspace(0,10,11,endpoint=True,retstep=True)
print(z)
(array([ 0.,  1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.]), 1.0)
help(np.linspace)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值