美文网首页
创建常见数组方法

创建常见数组方法

作者: 代聪 | 来源:发表于2019-04-16 16:11 被阅读0次

    调用random(在不用numpy情况下)

    import random
    
    • 下面进行
    a = [[random.randint(2, 3) for j in range(4, 5)] for i in range(3)]
    print(a)
    #随机输出[[3], [2], [2]]
    
    random.randint(2, 3)#用于生成一个指定范围内的整数,能取到边界的值
    
    random()#用于生成一个0到1的随机符点数: 0 <= n < 1.0
    
    random.randrange(10,100,2)#从序列中获取一个随机数
    
    • lambda匿名函数
    l=list(map(lambda b:b**2 ,range(4)))#用匿名函数
    #l=list(a**2 for a in range(4))与上面等价
    print(l)#输出[0, 1, 4, 9]
    
    l=list(map(lambda a,b:b**2 + a**3 ,range(4),range(4)))#lambda传入两个参数
    print(l)#输出[0, 2, 12, 36]
    
    
    #shuffle()将一个列表中的元素打乱
    random.shuffle(l)
    print(l)
    '''
    #输出[1, 9, 4, 0]
    '''
    

    调用numpy的情况

    a = np.random.rand(5,5)#生成5*5矩阵
    print(a)
    '''
    #输出
    [[0.74916726 0.12849824 0.57063098 0.19325447 0.56116894]
     [0.22679218 0.96869124 0.27121781 0.28622789 0.00401746]
     [0.47300094 0.70333641 0.19726069 0.66981576 0.85439413]
     [0.25000412 0.08932882 0.89786605 0.90429918 0.68183988]
     [0.20358736 0.12196523 0.1423346  0.14297495 0.45176548]]
     '''
    
    import numpy as np
    b = np.arange(24).reshape((4,6))
    print(b)
    """
     array([[ 0  1  2  3  4  5]
            [ 6  7  8  9 10 11]
            [12 13 14 15 16 17]
            [18 19 20 21 22 23]])
    """
    
    import numpy as np
    b=np.random.randint(0,10,(4,3))
    print(b)
    '''
    numpy.ndarray
    [[3 2 8]
     [1 0 4]
     [2 8 1]
     [0 9 6]]
    '''
    
    二项式分布函数
    'np.random.binomial(n,p,size=N),函数的返回值表示n中成功的次数,且以Cn^x*p^x*(1-p)^(n-x)的概率选择成功x次'
    import numpy as np
    b=np.random.binomial(5, 0.5, size=(4,4))# 一次试验抛5次硬币朝上的硬币数,做4*4次试验
    print(b)
    '''
    numpy.ndarray
    [[4 2 3 2]
     [2 2 4 4]
     [3 3 4 2]
     [2 4 3 3]]
    '''
    

    相关文章

      网友评论

          本文标题:创建常见数组方法

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