python的numpy-机器学习相关

本文深入探讨了NumPy库中的关键函数,包括数据加载、矩阵运算、数组操作及数学统计功能。通过具体代码示例,详细讲解了np.loadtxt的数据读取方式,np.dot的矩阵乘法,np.std和np.mean的统计计算,np.add等点运算,np.linspace和np.logspace的数值生成,以及np.arange和矩阵转置A.T的使用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. np.loadtxt
1.txt内容
代码段1

// An highlighted block
import numpy as np

filepath = open('E:/1.txt')
#从文件中读取数据,读取第0列和第1列,要求文件中每一行的列数相等
dataset = np.loadtxt(filepath, delimiter=',',usecols=(0,1))
Xdata = dataset[:, 0]
Ydata = dataset[:, 1]

结果:

>>>dataset
array([[1.11, 3.23],
       [2.  , 2.  ],
       [3.  , 3.  ]])
>>>Xdata
array([1.11, 2.  , 3.  ])

代码段2(unpack=True)

// An highlighted block
import numpy as np

filepath = open('E:/1.txt')
#从文件中读取数据,读取第0列和第1列,要求文件中每一行的列数相等
dataset = np.loadtxt(filepath, delimiter=',', usecols=(0, 1),  unpack=True)
Xdata = dataset[0]
Ydata = dataset[1]

结果:

>>>dataset
array([[1.11, 2.  , 3.  ],
       [3.23, 2.  , 3.  ]])
>>>Xdata
array([1.11, 2.  , 3.  ]

2. np.dot, np.std, np.mean

代码段2(unpack=True)

// np.dot就是一般的矩阵乘法,A(m**n),B(n**m),A**B(m**m)
import numpy as np
a = [[1,2,3],[1,3,4]]
b = [[2,1,1],[3,1,1]]
>>>np.dot(a,np.transpose(b))
array([[ 7,  8],
       [ 9, 10]])
//np.std求矩阵全局标准差
>>>np.std(a, axis=0)
array([0. , 0.5, 0.5])
//axis=0求矩阵每一列标准差,axis=1求矩阵每一行的标准差
>>>np.std(a)
1.1055415967851334
//np.mean求矩阵均值
>>>np.mean(a, axis=0)
array([1. , 2.5, 3.5])

2. np.add, np.subtract, np.multipy,np.divide
矩阵的点运算,加减乘除

3. np.linspace

// An highlighted block
>>> np.linspace(2.0, 3.0, num=5)
    array([ 2.  ,  2.25,  2.5 ,  2.75,  3.  ])
>>> np.linspace(2.0, 3.0, num=5, endpoint=False)
    array([ 2. ,  2.2,  2.4,  2.6,  2.8])
>>> np.linspace(2.0, 3.0, num=5, retstep=True)
    (array([ 2.  ,  2.25,  2.5 ,  2.75,  3.  ]), 0.25)

4. np.shape 生成与矩阵a同样大小的矩阵

a = np.array([[1,2,3],[4,5,6]])
b = np.zeros(a.shape)
b
array([[0., 0., 0.],
       [0., 0., 0.]])

5. np.logspace

np.logspace()常用于创建等比数列,底数为1,它也有常用的3个参数,第一个参数表示起始点的指数,第二个参数终止点的指数,第三个参数表示数列的个数;

>>>np.logspace(1,10,10) 
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])

6. np.arange, 绘图中常用,相当于MATLAB中的i=1:5

>>>np.arange(1,5)
array([1, 2, 3, 4])

7.求矩阵A的转置
A.T

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hellobigorange

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值