numpy之ones,array,asarray


from:http://blog.csdn.net/gobsd/article/details/56485177

numpy.ones()

廢話少說直接上代碼

>>> np.ones(5)
array([ 1.,  1.,  1.,  1.,  1.])
>>> np.ones((5,), dtype=np.int)
array([1, 1, 1, 1, 1])
np.ones((2, 1))
array([[ 1.],
       [ 1.]])
>>> s = (2,2)
>>> np.ones(s)
array([[ 1.,  1.],
       [ 1.,  1.]])
#其中,ones函數的參數如下
numpy.ones(shape, dtype=None, order='C')
#返回值就是一個給定類型和大小的數組

 numpy.array和numpy.asarray

    import numpy as np  
      
    #example 1:  
    data1=[[1,1,1],[1,1,1],[1,1,1]]  
    arr2=np.array(data1)  
    arr3=np.asarray(data1)  
    data1[1][1]=2  
    print 'data1:\n',data1  
    print 'arr2:\n',arr2  
    print 'arr3:\n',arr3  

 輸出:

    data1:  
    [[1, 1, 1], [1, 2, 1], [1, 1, 1]]  
    arr2:  
    [[1 1 1]  
     [1 1 1]  
     [1 1 1]]  
    arr3:  
    [[1 1 1]  
     [1 1 1]  
     [1 1 1]]  

 可見array和asarray沒有區別,都對原數據進行了復制。

    import numpy as np  
      
    #example 2:  
    arr1=np.ones((3,3))  
    arr2=np.array(arr1)  
    arr3=np.asarray(arr1)  
    arr1[1]=2  
    print 'arr1:\n',arr1  
    print 'arr2:\n',arr2  
    print 'arr3:\n',arr3  

輸出:

    arr1:  
    [[ 1.  1.  1.]  
     [ 2.  2.  2.]  
     [ 1.  1.  1.]]  
    arr2:  
    [[ 1.  1.  1.]  
     [ 1.  1.  1.]  
     [ 1.  1.  1.]]  
    arr3:  
    [[ 1.  1.  1.]  
     [ 2.  2.  2.]  
     [ 1.  1.  1.]]  

 此時兩者才表現出區別

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM