zoukankan      html  css  js  c++  java
  • 初探numpy——数组的创建

    numpy创建数组

    使用array函数创建数组

    import numpy as np
    array=np.array([1,2,3])
    print(array)
    
    [1 2 3]
    

    使用numpy.empty方法创建数组

    numpy.empty方法可以创建一个指定形状、数据类型且未初始化的数组

    numpy.empty(shape , dtype = float , order = 'C')
    
    参数 描述
    shape 数组形状
    dtype 数据类型
    array=np.empty((3,4))
    print(array)
    
    [[1.35966218e-311 1.35966218e-311 1.35966218e-311 1.05699242e-307]
     [8.01097889e-307 1.78020169e-306 7.56601165e-307 1.02359984e-306]
     [1.33510679e-306 2.22522597e-306 1.24611674e-306 1.29061821e-306]]
    

    使用numpy.zeros方法创建数组

    numpy.zeros方法可以创建一个指定大小的数组,数组元素以0来填充

    numpy.zeros(shape , dtype = float , order = 'C')
    
    参数 描述
    shape 数组形状
    dtype 数据类型
    array=np.zeros((4,5))
    print(array)
    
    [[0. 0. 0. 0. 0.]
     [0. 0. 0. 0. 0.]
     [0. 0. 0. 0. 0.]
     [0. 0. 0. 0. 0.]]
    

    使用numpy.ones方法创建数组

    numpy.ones方法可以创建一个指定大小的数组,数组元素以1来填充

    numpy.ones(shape , dtype = float , order = 'C')
    
    参数 描述
    shape 数组形状
    dtype 数据类型
    array=np.ones((4,4))
    print(array)
    
    [[1. 1. 1. 1.]
     [1. 1. 1. 1.]
     [1. 1. 1. 1.]
     [1. 1. 1. 1.]]
    

    使用numpy.eye方法创建数组

    numpy.eye方法可以创建一个正方的n*n单位矩阵(对角线为1,其余为0)

    array=np.eye(3)
    print(array)
    
    [[1. 0. 0.]
     [0. 1. 0.]
     [0. 0. 1.]]
    

    使用numpy.asarray方法创建数组

    numpy.asarray方法可以将输入转换为ndarray,如果输入本身就是ndarray则不进行复制

    numpy.asarray(a , dtype = None , order = None)
    
    参数 描述
    a 任意输入,可以是列表、列表的元组、元组、元组的元组、多维数组
    dtype 数据类型
    # 将列表转换为ndarray
    
    a=[1,2,3]
    array=np.asarray(a)
    print(array)
    
    [1 2 3]
    
    #将元组转化为ndarray
    
    a=(1,2,3)
    array=np.asarray(a)
    print(a)
    
    (1, 2, 3)
    
    # 将元组列表转换为ndarray
    
    a=[(1,2,3),(4,5)]
    array=np.asarray(a)
    print(a)
    
    [(1, 2, 3), (4, 5)]
    

    使用numpy.arange方法创建数组

    使用numpy.arange方法创建数值范围数组并返回ndarray对象

    numpy.arange(start , stop , step, dtype)
    
    参数 描述
    start 起始值,默认为1
    stop 终止值
    step 步长,默认为1
    dtype ndarray数据类型
    # 生成0到6的数组
    
    array=np.arange(6)
    print(array)
    
    [0 1 2 3 4 5]
    
    # 设置dtype
    
    array=np.arange(6,dtype=float)
    print(array)
    
    [0. 1. 2. 3. 4. 5.]
    
    # 设置起始值,终止值,步长
    
    array=np.arange(10,20,3)
    print(array)
    
    [10 13 16 19]
    

    使用numpy.linspace方法创建数组

    numpy.linspace用于创建一个一维等差数列的数组

    numpy.linspace(start , stop, num=50 , endpoint=True , retstep = False , dtype = None)
    
    参数 描述
    start 起始值
    stop 终止值
    num 要生成等步长的样本数量,默认为50
    endpoint 该值为True时,数列中包含stop值,默认为True
    retstep 该值为True时,显示间距,默认为False
    dtype ndarray的数据类型
    # 生成1到10的10个数值组成的等差序列
    
    array=np.linspace(1,10,10)
    print(array)
    
    [ 1.  2.  3.  4.  5.  6.  7.  8.  9. 10.]
    
    # 将endpoint设为false
    
    array=np.linspace(1,10,10,endpoint=False)
    print(array)
    
    [1.  1.9 2.8 3.7 4.6 5.5 6.4 7.3 8.2 9.1]
    
    # 显示间距
    
    array=np.linspace(1,10,10,retstep=True)
    print(array)
    
    (array([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.]), 1.0)
    

    使用numpy.logspace方法创建数组

    numpy.linspace用于创建一个一维等比数列的数组

    numpy.linspace(start , stop , num = 50 , endpoint = True , base = 10.0 , dtype = None)
    
    参数 描述
    start 起始值:base^start
    stop 终止值:base^stop
    num 要生成的样本数量,默认为50
    endpoint 该值为True时,数列中包含stop值,默认为True
    base 对数log的底数
    dtype ndarray的数据类型
    # 生成10^1到10^10的一个等比数列
    
    array=np.logspace(1,10,num=10)
    print(array)
    
    [1.e+01 1.e+02 1.e+03 1.e+04 1.e+05 1.e+06 1.e+07 1.e+08 1.e+09 1.e+10]
    
    #将底数设置为2
    
    array=np.logspace(1,10,num=10,base=2)
    print(array)
    
    [   2.    4.    8.   16.   32.   64.  128.  256.  512. 1024.]
  • 相关阅读:
    正则判断密码强弱
    QQ号码正则判断
    简单正则验证
    计算星期几
    实现这一天是这一年中的第几天
    倒计时
    选项卡放大镜(淘宝购物效果)
    遮罩层放大镜
    普通放大镜
    分布式事务解决方案(一) 2阶段提交 & 3阶段提交 & TCC
  • 原文地址:https://www.cnblogs.com/LRainner/p/13198767.html
Copyright © 2011-2022 走看看