概述
Python numpy 矩阵运算练习
首先我们使用最简单的程序查看 numpy 版本和配置:
import numpy as np
print(np.__version__)
np.show_config()
这里我们默认安装的是清华大学镜像源里面的包,版本号是 1.21.5:
- Create a 8x8 matrix and fill it with a checkerboard pattern (★☆☆)
创建一个8*8矩阵,并用棋盘图案填充
import numpy as np
z = np.zeros((8,8),dtype=int)
z[1::2,::2] = 1 # 从第 2 行开始,每隔一行,第 0 列开始,每隔一列赋值为 1
z[::2,1::2] = 1 # 从第 0 行开始,每隔一行,第 1 列开始,每隔一列赋值为 1
print(z)
- Create a 5x5 matrix with values 1,2,3,4 just below the diagonal (★☆☆)
创建一个5*5矩阵,对角线下方值为 0,1,2,3,4
z = np.diag(np.arange(5),k=0)
print(z)
- Create a custom dtype that describes a color as four unsigned bytes (RGBA) (★☆☆)
新建一个dtype类型用来描述一个颜色(RGBA)
import numpy as np
color = np.dtype([("r",np.ubyte,1),
("g",np.ubyte,1),
("b",np.ubyte,1),
("a",np.ubyte,1)])
- How to round away from zero a float array ? (★☆☆)
如何对数组进行四舍五入操作?
z = np.random.uniform(-10,+10,10)
print(z)
print (np.copysign(np.rint(np.abs(z)), z))
- How to ignore all numpy warnings (not recommended)? (★☆☆)
如何忽略所有numpy警告?
# 方法1
# Suicide mode on
import numpy as np
defaults = np.seterr(all="ignore")
z = np.ones(1) / 0
# Back to sanity
_ = np.seterr(**defaults)
# 方法2
with np.errstate(divide='ignore'):
Z = np.ones(1) / 0
- Given a 1D array, negate all elements which are between 3 and 8, in place. (★☆☆)
给定一个一维数组,将第3~8个元素取反
···python
import numpy as np
z = np.arange(11)
print(z)
z[(3 < z) & (z <= 8)] *= -1
print(z)
···
- Extract the integer part of a random array using 5 different methods (★★☆)
提取随机数列整数部分的五种方法
z = np.random.uniform(0,10,10)
print (z - z%1)
print (np.floor(z))
print (np.ceil(z)-1)
print (z.astype(int))
print (np.trunc(z))
- Create a 5x5 matrix with row values ranging from 0 to 4 (★★☆)
创建一个5*5的矩阵,每一行值为0~4
z = np.zeros((5,5))
z += np.arange(5)
print(z)
- Create random vector of size 10 and replace the maximum value by 0 (★★☆)
创建一个长度为10的随机矩阵,并将最大值替换为0
z = np.random.random(10)
z[z.argmax()] = 0
print(z)
- Print the minimum and maximum representable value for each numpy scalar type (★★☆)
打印每种numpy标量类型的最小和最大可表示值
for dtype in [np.int8, np.int32, np.int64]:
print(np.iinfo(dtype).min)
print(np.iinfo(dtype).max)
for dtype in [np.float32, np.float64]:
print(np.finfo(dtype).min)
print(np.finfo(dtype).max)
print(np.finfo(dtype).eps)
参考资料
这里的全部练习题都取自 CSDN 上一位叫 普通网友 的博主
-
numpy 100题练习 (一)
-
numpy 100题练习 <二>
最后
以上就是美丽魔镜为你收集整理的Python numpy 矩阵运算练习Python numpy 矩阵运算练习的全部内容,希望文章能够帮你解决Python numpy 矩阵运算练习Python numpy 矩阵运算练习所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复