CSDN 数组的转置与拷贝

1.转置(原数组的行变为列、列变为行)

import numpy as np #导入numpy库

a=np.random.randint(0,10,size=(2,4)) #创建一个随机整数在0到10之间,且数组是两行四列
a #打印输出

a.T #转置,原数组的行变为列、列变为行

a.dot(a.T) #a数组中的行与a.T数组中的列相乘进行相加

a1=a.transpose() #使用transpose函数进行转置,改变原来数组的值
a1[0]=10 #第0行数值改为10
a1 #打印输出

2.数组的拷贝:不拷贝、浅拷贝、深拷贝

#不拷贝,直接赋值

import numpy as np #导入numpy库

a2=np.arange(0,10) #创建一个0到10之间列表
b=a2 #将a2赋值给b
print(a2 is b) #返回True则结果相同

#浅拷贝(修改了原来数组的值)

c=a2.view() #使用view函数浅拷贝
c[0]=11 #将第0个数组改为11
print(a2) #打印输出

#深拷贝(不会修改原来数组的值)

d=a2.copy() #使用copy函数进行深拷贝
d[1]=13 #将第1个数值改为13
print(a2) #打印原数组
print(d) #打印深拷贝后的数组

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值