Python数据挖掘相关扩展库
扩展库 | 简介 |
---|---|
Numpy | 提供数组支持,以及相应的高效的处理函数 |
Scipy | 提供矩阵支持,以及矩阵相关的数值计算模块 |
Matplotlib | 强大的数据可视化工具、作图库 |
Pandas | 强大、灵活的数据分析和探索工具 |
StatsModels | 统计建模和计量经济学,包括描述统计、统计模型估计和推断 |
Scikit-Learn | 支持回归、分类、聚类等强大的机器学习库 |
Keras | 深度学习库,用于建立神经网络以及深度学习模型 |
Gensim | 用来做文本主题模型的库,文本挖掘可能用到 |
Numpy
import numpy as np#一般以np作为numoy的别名
a=np.array([2,0,1,5])#创建数组
print(a)#输出数组
print(a[:3])#引用前三个数字(切片)
print(a.min())#输出a的最小值
a.sort()#将a的元素从小到大排序,此操作直接修改a,因此这时候a为[0,1,2,5]
b=np.array([[1,2,3],[4,5,6]])#创建二维数组
print(b*b)#输出数组的平方阵,即[[1,4,9],[16,25,36]]
Matplotlib
import numpy as np
import matplotlib.pyplot as plt#导入Matplotlib
x=np.linspace(0,10,1000)#作图的变量自变量
y=np.sin(x)+1#因变量y
z=np.cos(x**2)+1#因变量z
plt.figure(figsize=(8,4))#设置图像大小
plt.plot(x,y,label='$\sin x+1$',color='red',linewidth=2)#作图,设置标签
plt.plot(x,z,'b--',label='$\cos x^2+1$')#作图,设置标签、线条类型
plt.xlabel('Time(s)')#x轴名称
plt.ylabel('Volt')#y轴名称
plt.title('A Simple Example')#标题
plt.ylim(0,2.2)#显示的y轴范围
plt.legend()#显示图例
plt.show()#显示作图结果
Scikit-Learn
1.所有模型提供的接口有:
model.fit():训练模型,对于监督模型来说是fit(X,y),对于非监督模型是fit(X)
2.监督模型提供的接口有:
model.predict(X_new):预测新样本
model.predict_proba(X_new):预测概率,仅对某些模型有用(比如LR)
model.score():得分越高,fit越好
3.非监督模型提供的接口有:
model.transform():从数据中学到新的“基空间”
model.fit_transform():从数据中学到新的基并将这个数据按照这组“基”进行转换
from sklearn.linear_model import LinearRegression
model=LinearRegression()
print(model)
from sklearn import datasets
iris=datasets.load_iris()
print(iris.data.shape)
from sklearn import svm
clf=svm.LinearSVC()
clf.fit(iris.data,iris.target)
clf.predict([[5.0,3.6,1.3,0.25]])
clf.coef_
网友评论