Python基础库及机器学习笔记
1.介绍
本节将主要介绍Python中的常用第三方库。这些库都是实现了各种计算功能的开源库,它们极大地丰富了Python的应用场景和计算能力,这里主要介绍NumPy、pandas和Matplotlib三个库的基础使用。其中NumPy是Python用来进行矩阵运算、高维度数组运算的数学计算库;pandas是Python用来进行数据预处理、数据操作和数据分析的库;Matplotlib是简单易用的数据可视化库,包含了丰富的数据可视化功能。接下将会逐个介绍这些库的简单应用。
1.1 NumPy
NumPy中文官网:https://www.numpy.org.cn/
NumPy是使用Python进行科学计算的基础包。它包含如下的内容:
一个强大的N维数组对象。
复杂的(广播)功能。
用于集成C / C ++和Fortran代码的工具。
有用的线性代数,傅里叶变换和随机数功能。
除了明显的科学用途外,NumPy还可以用作通用数据的高效多维容器。可以定义任意数据类型。这使NumPy能够无缝快速地与各种数据库集成。
NumPy是在BSD许可下获得许可的,允许重用而不受限制。
1.2 pandas
pandas中文官网:https://pypandas.cn/
pandas库在数据分析中是非常重要和常用的库,它利用数据框让数据的处理和操作变得
简单和快捷,在数据预处理、缺失值填补、时间序列、可视化等方面都有应用。接下来简单
介绍pandas的使用方法,包括如何生成序列和数据表格、数据聚合与分组运算及数据可视化
功能等。pandas库在导入后经常使用pd来代替。
1.3 Matplotlib
Matplotlib中文官网:https://matplotlib.org.cn/
Matplotlib是Python的绘图库,其具有丰富的绘图功能,pyplot是其中的一个模块,它
提供了类似MATLAB的绘图接口,能够绘制2D、3D等丰富图像,是数据可视化的好帮手,
接下来简单介绍其使用方法。
2. 机器学习模型初探
针对待分析的数据集,利用机器学习算法进行建模和分析的步骤其实也很固定,下面先
来看一个实际的机器学习应用案例。
假设房子的价格只跟面积有关,表1-1给出了一些房子的面积和价格之间的数据,请计
算出40㎡的房屋价格。
import numpy as np
import matplotlib
matplotlib.use('TkAgg')
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
x=np.array([56,32,78,160,240,89,91,69,43])
y=np.array( [90,65,125,272,312,147,159,109,78])
#数据导入与处理,并进行数据探索
X=x.reshape(-1,1)
Y=y.reshape(-1,1)
plt.figure(figsize=(10,6))#初始化图像窗口plt.scatter(X,Y,s=50)#原始数据的图
plt.title("原始数据的图")
plt.show()
#训练模型和预测
model=LinearRegression()
model.fit(X,Y)
x1=np.array([40,]).reshape(-1,1) #带预测数据
xl_pre=model.predict(np.array(x1)) #预测面积为40m2时的房价
#数据可视化,将预测的点也打印在图上
plt.figure (figsize=(10,8))
plt.scatter(X,Y)#原始数据的图
b=model.intercept #截距a=model.coef#斜率
y=a*X+b#原始数据按照训练好的模型画出直线
plt.plot(X,y)
yl=a*x1+b
plt.scatter(x1,y1,color='r')
plt.show()