#Numpy是numerical python(数字的python)简称。1.具备功能强大的多维数组ndarry;2.具备对整个数组进行快速运算的函数;3.线性怠速、傅里叶变换、随机数生成等功能;3.可集成C\C++\Fortran等语言。 import numpy as np #导入numpy arr1=np.array([1,2,3,4,5])#创建数组 print(arr1[0])#和列表一样,也可以进行索引与切片,如果修改切片中的值,那么原来元素的值也会改变。如果不想改变原来函数的值,就用a=arr1[2:-2].copy,相当于深复制 print(type(arr1))#可以看出array1类型是numpy.ndarray,为numpy创建的数组 lst=[[1,2,3],[4,5,6]]#创建二位列表lst arr2=np.array(lst)#把列表转换为数组 print(arr2.ndim)#查看数组的维度 print(arr2.shape)#查看形状,为n行m列 print(arr2.size)#查看元素的个数,相当于shap中n*m的值 print(arr2.dtype)#查看元素的类型 print(arr2.itemsize)#查看每个元素的大小,以字节为单位 arr3=np.array(lst,dtype=np.float64)#把列表转换为数组,并且指定转换后的数据类型 #help(np.array)#查看帮助选项 np.zeros(3)#创建全为0的数组 np.ones((2,3))#创建全为1的两行三列的数组 print(np.random.rand(15))#创建5个0-1的随机数 print(np.random.randint(1,10))#创建要给0-10的随机数 print(np.random.randint(1,10,5))#创建5个0-10的随机数 print(np.arange(10))#创建0-9的数组,也可以在后面加一个参数作为步长。np.arange(1,10,3) a=np.arange(15).reshape(5,3)#创建一个几行几列的数组 print(np.sqrt(a))#a的算数平方根 a=np.arange(30).reshape(2,3,5)#多为数组的建立 print(a[1,2,1])#第一行第二列第四个元素(注意是从0开始数) mat=np.genfromtxt(r'D:\download\white_wine.csv',delimiter=',',skip_header=1)#导入一个文件,以','分割 print(mat) print("\t") white_wine=mat[:15,[8,10,11]]#提取钱15行,并抽取第7,9,10三个元素 x0=white_wine[:,2]>5#通过布尔索引,判读0,1情况 print(white_wine[x0])#只会选取相应列中x0返回值为真的数据 print("\t") print(white_wine-white_wine[0])#与第一行的差值 print(np.sum(white_wine,axis=0)/len(white_wine))#axis=0表示按列进行计算,而不是按照行求和 #print(np.mean(white_wine,axis=0))#等价于上面的求和方式 print(np.max(white_wine,axis=0))#每一列的最大值,最小值用min print(np.sort(white_wine[:,0]))#默认从小到大进行排列 print(np.unique(white_wine[:,2]))#赛选不重复的项 #生成一组新的列表,其中表示如果质量大于等于6,为好;反之,不好 l=[] for i in white_wine[:,2]: if i >=6: l.append("好") else: l.append("不好") print(l) #优化方法 print([("好" if i>=5 else "不好") for i in white_wine[:,2]])#优化1 print(np.where(white_wine[:,2],"好","不好"))#优化2 m=np.array([1,2,3])#可以看出数组一旦确定了就不能修改了,但是列表却可以 print(m+np.array([5]))
python numpy学习
猜你喜欢
转载自blog.csdn.net/qq_37181884/article/details/81266881
今日推荐
周排行