ndarray(ndarry的意思是n dimensional array : n维数组)是NumPy库中的一种基本数据类型,以下先用例子来说明ndarray与list的区别并进行对比,以说明ndarray的优越之处。
【例】A=[0,1,2,3,4],B=[5,6,7,8,9],试计算
【使用list类型“数组”的解法】
def pySum(): #冒号
a=[0,1,2,3,4];
b=[5,6,7,8,9];
c=[];
for i in range(len(a)): #冒号
c.append(a[i]**2+b[i]**3);
return c; #注意缩进对齐
print(pySum());
使用visual studio运行得到以下结果:
【使用ndarray类型数组的解法】
import numpy as np
def npSum():
a = np.array([0, 1, 2, 3, 4])
b = np.array([5, 6, 7, 8, 9]) # 小括号中还有中括号
c = a ** 2 + b ** 3
return c
print(npSum())
使用PyCharm运行得到以下结果:
对比
这两种程序,主要区别在于是否使用了循环
在使用ndarray时,可以不使用循环,而是直接把ndarray类型的数据当作一个“数”,这对于进行数据分析是很方便的。并且,由于python只有list类型而没有数组类型,所以ndarray类型填补了python中没有数组类型这一缺点。
以下是ndarray的一些属性与说明,应留有印象,不必硬记。
基本属性
在IPython环境下以一个例子进行说明:
元素类型
numpy中的元素有以下类型
不同与python自带的数据类型,numpy中的数据类型很多,这主要是因为Numpy库常用于科学计算,提供大量的数据类型
可以提高运算与存储性能。
非同质对象构成的ndarray数组
所谓非同质对象,其实也就是不同长度的数组。以一个例子进行说明