python|python ndarray数组对象特点及实例分享

1、numpy数组是同质数组,即所有元素的数据类型必须相同。
2、ndarray数组一般要求所有元素的数据类型相同,下标从0开始,最后一个元素的下标为数组长度减1。
实例

import numpy as np a = np.arange(0, 5, 1)print(a)b = np.arange(0, 10, 2)print(b)

知识点扩充:
定义数组
>>> import numpy as np>>> m = np.array([[1,2,3], [2,3,4]])#定义矩阵,int64>>> marray([[1, 2, 3],[2, 3, 4]])>>> m = np.array([[1,2,3], [2,3,4]], dtype=np.float)#定义矩阵,float64>>> marray([[1., 2., 3.],[2., 3., 4.]])>>> print(m.dtype)#数据类型float64>>> print(m.shape)#形状2行3列(2, 3)>>> print(m.ndim)#维数2>>> print(m.size)#元素个数6>>> print(type(m))

还有一些特殊的方法可以定义矩阵
>>> m = np.zeros((2,2))#全0>>> marray([[0., 0.],[0., 0.]])>>> print(type(m))#也是ndarray类型>>> m = np.ones((2,2,3))#全1>>> m = np.full((3,4), 7)#全为7>>> np.eye(3)#单位矩阵array([[1., 0., 0.],[0., 1., 0.],[0., 0., 1.]])>>> np.arange(20).reshape(4,5)#生成一个4行5列的数组>>>>>> np.random.random((2,3))#[0,1)随机数array([[0.51123127, 0.40852721, 0.26159126],[0.42450279, 0.34763668, 0.06167501]])>>> np.random.randint(1,10,(2,3))#[1,10)随机整数的2行3列数组array([[5, 4, 9],[2, 5, 7]])>>> np.random.randn(2,3)#正态随机分布array([[-0.29538656, -0.50370707, -2.05627716],[-1.50126655, 0.41884067, 0.67306605]])>>> np.random.choice([10,20,30], (2,3))#随机选择array([[10, 20, 10],[30, 10, 20]])>>> np.random.beta(1,10,(2,3))#贝塔分布array([[0.01588963, 0.12635485, 0.22279098],[0.08950147, 0.02244569, 0.00953366]])

操作数组
>>> from numpy import *>>> a1=array([1,1,1])#定义一个数组>>> a2=array([2,2,2])>>> a1+a2#对于元素相加array([3, 3, 3])>>> a1*2#乘一个数array([2, 2, 2])##>>> a1=np.array([1,2,3])>>> a1array([1, 2, 3])>>> a1**3#表示对数组中的每个数做立方array([ 1, 8, 27])##取值,注意的是它是以0为开始坐标,不matlab不同>>> a1[1]2##定义多维数组>>> a3=np.array([[1,2,3],[4,5,6]])>>> a3array([[1, 2, 3],[4, 5, 6]])>>> a3[0]#取出第一行的数据array([1, 2, 3])>>> a3[0,0]#第一行第一个数据1>>> a3[0][0]#也可用这种方式1>>> a3array([[1, 2, 3],[4, 5, 6]])>>> a3.sum(axis=0)#按行相加,列不变array([5, 7, 9])>>> a3.sum(axis=1)#按列相加,行不变array([ 6, 15])

【python|python ndarray数组对象特点及实例分享】到此这篇关于python ndarray数组对象特点及实例分享的文章就介绍到这了,更多相关python ndarray数组对象有什么特点内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    推荐阅读