python:ndarray的基本用法

ndarray数组属性

– 维度(dimensions)称为轴(axis), 轴的个数成为秩(rank)
axis = 0, 对列操作
axis = 1, 对行操作
– 基本属性

  • ndarray.ndim(秩)
  • ndarray.shape(维度)
  • ndarray.size(元素总个数)
  • ndarray.dtype(元素类型)
  • ndarray.itemsize(元素字节大小)

ndarray的创建

import numpy as np
aArray = np.array([1, 2, 3])#创建一维数组
aArray = np.array([(1, 2, 3),(4, 5, 6)])#创建二维数组
bArray = np.arange(1, 5, 0.5)#生成浮点数
cArray = np.random.random((2, 2))#生成随机数
dArray = np.linspace(1, 2, 10, endpoint = False)#创建一个在(起始点,终点,个数,终止点是否包含在内)条件下的等差数组
eArray = np.ones([2,3])#2行3列的值为1的特殊矩阵
fArray = np.zeros((2,2))#2行2列的零矩阵
gArray = np.fromfunction(lambda i,j : (i+1)*(j+i), (9,9))#生成9*9的乘法口诀表

ndarray的切片操作

aArray = np.array([(1, 2, 3),(4, 5, 6)])
print(aArray[1])  #[4 5 6]
print(aArray[0:2])  #[[1 2 3] [4 5 6]]
print(aArray[;,[0,1]]) #[[1 2] [4 5]]
print(aArray[1,[0,1]])  #[4 5]
print(aArray[::-1])  #交换行([(4, 5, 6),(1, 2, 3)])
print(aArray[:,::-1])  #交换列([(4, 5, 6),(1, 2, 3)])

ndarray的行列变换

aArray.reshape(2,-1) #转化为2行,不明确列
aArray.reshape(-1,1) #转为1列
np.vstack((bArray,cArray))#垂直方面拼接
np.hstack((bArray,cArray))#水平方向拼接

ndarray的基本运算

a = np.array([(1, 2, 3),(4, 5, 6)])
b = np.array([(2, 2, 2),(2, 2, 2)])
c = a * b #([(2,4,6),(8,10,12)])
d = np.array([1,2,3])
e = a + d #注意不同维度的加法运算 ([[2,4,6],[5,7,9]])
print(a.sum(axis = 0)) #纵轴求和([5,7,9])
print(a.sum(axis = 1)) #横轴求和([6,15])
print(a.min()) #return min value
print(a.argmax()) #返回最大值的索引 5
print(a.mean()) #平均值
print(a.var()) #方差
print(a.std()) #标准差
print(np.dot(a,a)) #内积
print(np.linalg.det(a)) #行列式
print(np.linalg.inv(a)) #逆矩阵
  • 6
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值