美文网首页我爱编程
python-->numpy笔记

python-->numpy笔记

作者: 晨暮云海 | 来源:发表于2017-05-23 11:15 被阅读0次
    # encoding:utf-8
    import numpy as np
    
    data1 = [1,2,3,4,5.6,7,8.9]
    arr1 = np.array(data1)
    print arr1
    
    data2 = [[1,2,3,4],[5,6,7,8]]
    arr2 = np.array(data2)
    print arr2
    
    #array.ndim 看维数
    print arr1.ndim
    print arr2.ndim
    #array.shap 看矩阵几行几列
    print arr1.shape
    print arr2.shape
    
    #创建指定长度或矩阵全0数组
    print np.zeros(10)
    print np.zeros((3,6))
    #创建指定长度或矩阵全1数组
    print np.ones(10)
    print np.ones((2,4))
    
    #返回一些垃圾值
    print np.empty((1,2,2))
    
    #numpy内置range函数
    print np.arange(10)
    
    #创建NxN的单位矩阵
    print np.eye(3)
    
    #bool 型索引
    names = np.array(['Bob','Joe','Will','Bob'])
    
    #这个运算将产生bool型数组
    #names == 'Bob'
    
    arr = np.empty((8,4))
    print arr
    #选出的是4,5,0,1行
    print arr[[4,5,0,1]]
    
    #3行5列的矩阵
    nn = np.arange(15).reshape([3,5])
    print nn
    
    import matplotlib.pyplot as plt
    
    points = np.arange(-5,5,0.01)
    
    #接受2个一维数组,产生2个二维矩阵
    xx,yy = np.meshgrid(points,points)
    
    z = np.sqrt(xx**2+yy**2)
    #plt.imshow(z,cmap=plt.cm.gray);plt.colorbar()
    #plt.title('image plot of $\sqrt{x^2+y^2}$ for a grid of values')
    #plt.show()
    
    #numpy.where() 三元表达式
    x = np.array([1.1,1.2,1.3,1.4,1.5])
    y = np.array([2.1,2.2,2.3,2.4,2.5])
    c = np.array([True,False,True,True,False])
    
    #c 里面为true选择x的,为false选择y的
    re = np.where(c,x,y)
    print re
    
    arr = np.empty((4,4))
    print np.where(arr > 0,2,-2)
    
    bools = np.array([False,False,True,False])
    #any检查数组中的值有一个或多个true,all,检查数组中的值都为true
    print bools.any()
    print bools.all()
    
    a = np.array([1,3,1,2,5,3,2])
    #排序
    a.sort()
    print a
    
    #去重排序
    print np.unique(a)
    
    #一个数组中的值在另一个数组中的成员资格
    print np.in1d(a,[1,4,5,8])
    
    #保存文件格式默认.npy
    ar = np.arange(10)
    np.save('som',ar)
    print np.load('som.npy')
    
    #压缩保存文件
    np.savez('ss',a=ar,b=arr)
    tt = np.load('ss.npz')
    print tt['b']
    

    相关文章

      网友评论

        本文标题:python-->numpy笔记

        本文链接:https://www.haomeiwen.com/subject/oetixxtx.html