numpy的科学计算(亲测)

代码:

from django.test import TestCase
import numpy as np
# Create your tests here.

def nuTest():
    #特定范围内的随机数
    a=np.random.randint(5,size=7)#创建一个0-5内7个长度的任意数字
    a1=np.random.randint(5,size=(3,4))#创建一个3x4的二维数组,5以内的数字创建
    print(a1)
    print(a)
    b=np.random.randint(2,10,size=(3,2))#创建一个2-10范围内3x2的数组
    print(b)
    c=np.random.random(9)#创建一个0-1以内的8个长度的数组浮点数
    print(c)

    d=np.random.randn(100).mean()#创建100个浮点数用于标准正态分布零均值
    print(d)
    f=np.random.randn(100).std()#创建100个浮点数用于标准正态分布单位方差
    print(f)

    g=np.ones((4,3))#创建二维
    g1=np.ones(4) #创建一维
    h=np.zeros((4,3))
    h1=np.zeros(10)

    j=np.eye(3)#创建一个单位矩阵
    print(j)

    k=np.identity(3)#创建一个单位矩阵
    print(k)

    l=np.arange(7)#创建一维的7个长度的数组
    l1=np.arange(1,7)#创建一个步长是1,长度是1-7的数组
    print(l1)

    l3=np.arange(0,10,2)#创建一个步长是2,0-10之间的数
    print(l3)

    z=np.full((3,4),9)#创建一个3行4列,全是数字9的矩阵
    print(z)
    z1=np.full((3,4),9,dtype="float")
    print(z1)

    x=np.random.randint(6,size=(3,4))
    x1=x.ravel()#把一个3x4的二维数组,变换成一个1维的数组
    print(x1)

    c=x.reshape(4,3)#把x数组调整成一个4x3的数组
    c1=x.reshape(2,6)#把x数组调整成一个4x3的数组
    print(c1)

    #让NumPy通过传递-1来确定尺寸
    c2=x.reshape(-1,3) #4x3
    c3=x.reshape(-1,1)#12x1

    #把一个矩阵转换成一个转置矩阵,也就是行和列进行互换位置
    v=x.transpose()
    print(v)

    #np的切片技术
    b=np.random.randint(6,size=(4,3))
    b1=np.vsplit(b,2) #行数一定是偶数,切成一个2x3的数组
    print(b1)

    b2=np.vsplit(b,2)[0]##行数一定是偶数,切成一个2x3的数组,输出第一项
    print(b2)

    n=np.random.randint(7,size=(6,4))
    n1=np.hsplit(n,2)
    n2=np.hsplit(n,2)[0]##行数一定是偶数,切成一个2x3的数组,输出第一项
    print(n1)

    #合并数组
    m1=np.random.random(5)
    m2=np.random.random(5)
    m3=np.concatenate((m1,m2))
    print(m3)

    m4=np.concatenate((m1.reshape(-1,1),m2.reshape(-1,1)),axis=1)#m1和m2的行数和列数要一样
    print(m4)

    q=np.random.randint(5,size=(3,3))#返回矩阵的行列式计算结果
    q1=np.linalg.det(q)

    # q2=np.linlg.inv(q)#计算矩阵的逆
    # print(q2)

    q3=np.linalg.eig(q) #计算平方矩阵的特征值和特征向量
    print(q3)

    w1=np.array([1,2,3])
    w2=np.array([2,3,4])
    w3=np.dot(w1,w2)#计算两个向量的点积,这是元素相对于其位置的乘积之和。 第一个向量的第一个元素乘以第二个向量的第一个元素,依此类推。
    print(w3)

    #矩阵乘法
    e1=([[1,2],[3,4]])
    e2=([[6,3],[5,6]])
    e3=np.matmul(e1,e2)
    print(e3)






if __name__=="__main__":
    nuTest()

测试结果:

F:\开发工具\pythonProject\tools\venv\Scripts\python.exe F:/开发工具/pythonProject/tools/httLos_/tests.py
[[1 3 3 3]
 [0 3 3 1]
 [3 1 3 0]]
[4 4 4 3 0 4 2]
[[4 7]
 [8 9]
 [7 5]]
[0.68403814 0.2196496  0.28176966 0.22152546 0.67010038 0.66040225
 0.37509977 0.47763531 0.17105106]
-0.1443401603598643
0.9896943391556011
[[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]
[[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]
[1 2 3 4 5 6]
[0 2 4 6 8]
[[9 9 9 9]
 [9 9 9 9]
 [9 9 9 9]]
[[9. 9. 9. 9.]
 [9. 9. 9. 9.]
 [9. 9. 9. 9.]]
[3 2 4 2 0 3 0 4 5 2 4 0]
[[3 2 4 2 0 3]
 [0 4 5 2 4 0]]
[[3 0 5]
 [2 3 2]
 [4 0 4]
 [2 4 0]]
[array([[3, 3, 4],
       [3, 0, 0]]), array([[2, 2, 1],
       [4, 0, 1]])]
[[3 3 4]
 [3 0 0]]
[array([[2, 5],
       [3, 0],
       [0, 4],
       [3, 1],
       [2, 0],
       [2, 6]]), array([[2, 1],
       [5, 2],
       [3, 1],
       [4, 2],
       [4, 3],
       [5, 3]])]
[0.66792771 0.53426766 0.83653315 0.62886689 0.95659319 0.35124973
 0.68051299 0.30564144 0.04180627 0.12860045]
[[0.66792771 0.35124973]
 [0.53426766 0.68051299]
 [0.83653315 0.30564144]
 [0.62886689 0.04180627]
 [0.95659319 0.12860045]]
(array([-1.41960077,  0.3480617 ,  6.07153907]), array([[ 0.22366144, -0.68278961,  0.80807094],
       [ 0.50446357, -0.11752821,  0.46253338],
       [-0.83396167,  0.72110018,  0.36480711]]))
20
[[16 15]
 [38 33]]

Process finished with exit code 0

参考:numpy遍历每行操作_每个数据科学家都应该知道的20 numpy操作-CSDN博客

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值