laflame_youngLouis

博客园 首页 新随笔 联系 订阅 管理

1.创建一个边界值为1而内部都是0的数组,图例如下:
[提示:]解此题可以先把所有值都设置为1,这是大正方形;其次,把边界除外小正方形全部设置为0。
本题用到numpy的切片原理。多维数组同样遵循x[start:stop:step]的原理。
[1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]
[1. 0. 0. 0. 0. 0. 0. 0. 0. 1.]
[1. 0. 0. 0. 0. 0. 0. 0. 0. 1.]
[1. 0. 0. 0. 0. 0. 0. 0. 0. 1.]
[1. 0. 0. 0. 0. 0. 0. 0. 0. 1.]
[1. 0. 0. 0. 0. 0. 0. 0. 0. 1.]
[1. 0. 0. 0. 0. 0. 0. 0. 0. 1.]
[1. 0. 0. 0. 0. 0. 0. 0. 0. 1.]
[1. 0. 0. 0. 0. 0. 0. 0. 0. 1.]
[1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]

 import numpy as np
 a=np.zeros((9,10))          
 a[0:,[0,9]]=1               
 a[[0,8],0:]=1               
 print(a)

 

2.在数组主对角线上创建一个值为1,2,3,4的5x5矩阵,图例如下:

import numpy as np
a=np.arange (1,5)
print(np.diag(a))    

 

3.数组归一化操作
生成一个随机的5*5矩阵,找出最大值和最小值,然后把最大值和最小值分别用1和0表示,其他值则介于在0和1中间。

import numpy as np
a=np.random.rand(5,5)
print(np.argmax(a))
a[int(np.argmax(a)/5),int(np.argmax(a)%5)]=1   
a[int(np.argmin(a)/5),int(np.argmin(a)%5)]=0   
print(a)

 

posted on 2019-09-26 17:56  liuyin  阅读(150)  评论(0编辑  收藏  举报