numpy.ndarray的赋值操作

Posted 王明辉的部落

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了numpy.ndarray的赋值操作相关的知识,希望对你有一定的参考价值。

 

mat=zeros((3,4)) #生成一个全部元素为0的矩阵

mat[1,:]=111 #从第1行第0列开始,一直到最后一列,赋值为1,效果与mat[1,0:3]相同,前置0可以省略,最后的列数可以省略

输出:

[[ 0. 0. 0. 0.]

[ 111. 111. 111. 111.]

[ 0. 0. 0. 0.]]

mat[1,2:]=222 #从第1行第2列开始,到最后,赋值为2

输出:

[[ 0. 0. 0. 0.]

[ 111. 111. 222. 222.]

[ 0. 0. 0. 0.]]

mat=zeros((3,4)) #初始化

mat[0,0:0]=333 #从第0行第0列开始,到第0列,此行不存在,所以无变化。此处的第1列是实数1。

print(mat)

输出:

[[ 0. 0. 0. 0.]

[ 0. 0. 0. 0.]

[ 0. 0. 0. 0.]]

mat[0,0:1]=444 #从第0行第0列开始,到第1列,共1列

print(mat)

输出:

[[ 444. 0. 0. 0.]

[ 0. 0. 0. 0.]

[ 0. 0. 0. 0.]]

mat[0,0:2]=555 #从第0行第0列开始,到第2列,共2列

print(mat)

输出:

[[ 555. 555. 0. 0.]

[ 0. 0. 0. 0.]

[ 0. 0. 0. 0.]]

mat[0,0:3]=666 #从第0行第0列开始,到第3列,共3列

print(mat)

[[ 666. 666. 666. 0.]

[ 0. 0. 0. 0.]

[ 0. 0. 0. 0.]]

mat[0,0:4]=777 #从第0行第0列开始,到第3列,共4列

print(mat)

[[ 777. 777. 777. 777.]

[ 0. 0. 0. 0.]

[ 0. 0. 0. 0.]]

mat[0,0:500]=777 #从第0行第0列开始,到第3列,共500列,与上一个相比,列数超了,但也并没什么变化,也不报错。

print(mat)

[[ 777. 777. 777. 777.]

[ 0. 0. 0. 0.]

[ 0. 0. 0. 0.]]

 

以上是关于numpy.ndarray的赋值操作的主要内容,如果未能解决你的问题,请参考以下文章

TypeError: 不支持的操作数类型 -: 'numpy.ndarray' 和 'numpy.ndarray'

data=numpy.randn(8) 如何把data中小于0的数值赋值等于0

Python数组及其基础操作Numpy ndarray

TypeError:获取参数数组的类型无效 numpy.ndarray,必须是字符串或张量。 (不能将 ndarray 转换为张量或操作。)

Numpy.ndarray 对象不可调用错误原因

numpy.ndarray 如何标准化?