import numpy as np
# 可以用 as len使用别名,与C++中的using有异曲同工之妙;
a = np.arange(5,20).reshape(3, -1)
# arange(start,)用于生成一维数组
# reshape()将一维数组转换为多维数组
# np.arange([start, ]stop, [step, ]dtype=None)
# 参数解释:
# start:起点值;可忽略不写,默认从0开始
# stop:终点值;生成的元素不包括结束值
# step:步长;可忽略不写,默认步长为1
# dtype:默认为None,设置显示元素的数据类型
# 不同参数个数情况介绍:
# 一个参数时,参数值为终点值,起点取默认值0,步长取默认值1。
# 两个参数时,第一个参数为起点值,第二个参数为终点,步长取默认值1。
# 三个参数时,第一个参数为起点,第二个参数为终点,第三个参数为步长,其中步长支持小数。
reshape()函数用于在不更改数据的情况下为数组赋予新形状。
1. 语法
numpy.reshape(a, newshape, order=‘C’)
a
reshape函数的参数说明:
a.reshape(m,n)表示将原有数组a转化为一个m行n列的新数组,a自身不变。m与n的乘积等于数组中的元素总数
reshape(m,n)中参数m或n其中一个可写为"-1","-1"的作用在于计算机根据原数组中的元素总数自动计算行或列的值。
举例:
# Numpy的数组类被称作ndarray(应当是n维数组的缩写)。常被称作数组。
import numpy as np
# 可以用 as 使用别名,与C++中的using有异曲同工之妙;
a = np.arange(5,20).reshape(3, -1)
# arange(start,)用于生成一维数组
# reshape()将数组转换为多维数组
print(a)
b = np.arange(10, 20)
b
print(b)
print("只含一个参数,默认从0开始的一维数组: ", np.arange(10))
print("只含两个参数,从起点开始到终点(不包含终点)的一维数组: ", np.arange(5,20))
print("含三个参数,从起点开始到终点(不包含终点),步长为设定值的一维数组: ", np.arange(1, 20, 2))
print("数组的维度(shape):", a.shape)
print("数组轴的个数(矩阵的秩)(ndim):", a.ndim)
print("数组元素的总个数(size):", a.size)
print("一个用来描述数组中元素类型的对象(dtype):", a.dtype)
print("数组中每个元素的字节大小(itemsize):", a.itemsize)
print(type(a))
print("三行五列:", a.reshape(3, 5))
print("五行三列:", a.reshape(5, -1))
输出结果:
[[ 5 6 7 8 9] [10 11 12 13 14] [15 16 17 18 19]] [10 11 12 13 14 15 16 17 18 19] 只含一个参数,默认从0开始的一维数组: [0 1 2 3 4 5 6 7 8 9] 只含两个参数,从起点开始到终点(不包含终点)的一维数组: [ 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19] 含三个参数,从起点开始到终点(不包含终点),步长为设定值的一维数组: [ 1 3 5 7 9 11 13 15 17 19] 数组的维度(shape): (3, 5) 数组轴的个数(矩阵的秩)(ndim): 2 数组元素的总个数(size): 15 一个用来描述数组中元素类型的对象(dtype): int32 数组中每个元素的字节大小(itemsize): 4 <class 'numpy.ndarray'> 三行五列: [[ 5 6 7 8 9] [10 11 12 13 14] [15 16 17 18 19]] 五行三列: [[ 5 6 7] [ 8 9 10] [11 12 13] [14 15 16] [17 18 19]]
参考资料:
Python reshape() 函数用法_pd.reshape-CSDN博客文章来源:https://www.toymoban.com/news/detail-790646.html
numpy库常用函数——np.arange()函数-CSDN博客文章来源地址https://www.toymoban.com/news/detail-790646.html
到了这里,关于numpy的arange函数与reshape函数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!