Numpy最重要的一个特
(ndarray)点是其N维数组对象,该对象是一个快速而灵活地大数据集容器
创建ndarray创建数组最简单的方法就是使用array函数,它接收一切数组性的对象,然后产生一个新的含有传入数组的NumPy对象
data=[2,3,4]
arr1=np.array(data)
np.zeros(10),np.ones(10) ,np.empty(10) 可以创建一个没有任何具体值得数组
np.zeros((3,6)) ,np.empty((2,3,2)) empty返回的都是未初始化的垃圾值
arange是Python内置函数range的数组版
np.arrange(15)
输出是array([15个数值])
NumPy的数据类型都是float64浮点数(几乎)
ndarray的数据类型的指定:
np.array([1,2,3],dtype=np.int32)dtype的命名方式相同:一个类型名,后面跟一个表示各元素长的数字
arr1.astype(np.float64)可以改变其方式
跟列表最重要的区别是,数组切片是原始数据的视图,这意味着数据不会被复制,视图上的任意修改都会直接反应到原数组上
arr1=np.arange(10)
arr1[5:8]=12
如果你需要将数组复制,你需要显式的将数组copy出来,进行复制操作
arr1[5:8].copy()
可以利用以逗号隔开的索引列表来选取每个元素arr1[2,3]
只有冒号表示选取整个轴,arr[:,:1] arr[:2,1:]=0,对切片的赋值操作也会扩散到整个选区
mask=(name=='Bob') | (name=='Will') 布尔型索引选取数组,
花式索引:(就是可以根据索引将数组选区出来)
花式索引总是将新数组复制到一个新的存储单元;arr.T转置