2018/12/4 新知识

1.参考:https://blog.csdn.net/weixin_40490077/article/details/79523526

子图subplot()

ax1 = plt.subplot(1,2,1)#1代表行,2代表列,所以一共有2个图,1代表此时绘制第二个图。其中ax1是为了坐标轴主次刻度大小的设置

2.boxplot(箱线图):一种用作显示一组数据分散情况的统计图。它能显示出一组数据的最大值、最小值、中位数及上下四分位数。因形状如箱子而得名。这意味着箱线图中的每个值对应于数据中的实际观察值。      

sns.boxplot(df[colnm[i]], orient="v", width=0.5)  # 箱式图//orient,图像方向,水平(h)或者垂直(v),width的图宽。

3.参考:https://blog.csdn.net/qq_39949963/article/details/79362501

displot():集合了matplotlib的hist()与核函数估计kdeplot的功能,增加了rugplot分布观测条显示与利用scipy库fit拟合参数分布的新颖用途。

sns.distplot(x,hist=False,fit=norm) #fit = norm拟合标准正态分布,hist=True为直方图。

4.参考:https://blog.csdn.net/xiaotao_1/article/details/80954063

显示图中的标签

plt.legend(['Normal dist. ($\mu=$ {:.2f} and $\sigma=$ {:.2f} )'.format(mu, sigma)], loc='best')

(1)loc 位置

(2)设置图例字体大小,fontsize参数 : int or float or {‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’},只有这7种调节值。 

5.拟合直线

根据指定的理论分布(默认为正态分布)的分位数生成样本数据的概率图。probplot可选地计算数据的最佳拟合线,并使用Matplotlib或给定的plot函数绘制结果。

res = stats.probplot(df['target'], plot=plt)

7.参考:https://blog.csdn.net/u012162613/article/details/42192293

英文原文:https://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html

PCA使用

sklearn.decomposition.PCA(n_components=None, copy=True, whiten=False)

n_components:意义:PCA算法中所要保留的主成分个数n,也即保留下来的特征个数n
类型:int ,float或者 string,缺省时默认为None,所有成分被保留。
          赋值为int,比如n_components=1,将把原始数据降到一个维度。
          赋值为string,比如n_components='mle',将自动选取特征个数n,使得满足所要求的方差百分比。

          float时,比如n_components=0.95,选择特征的数量,使得方差之和应大于n_components=0.95。

方法:

(1)fit(X),表示用数据X来训练PCA模型。

函数返回值:调用fit方法的对象本身。比如pca.fit(X),表示用X对pca这个对象进行训练。

(2)用X来训练PCA模型,同时返回降维后的数据。

newX=pca.fit_transform(X),newX就是降维后的数据。

(3)将数据X转换成降维后的数据。当模型训练好后,对于新输入的数据,都可以用transform方法来降维。

(4)将降维后的数据转换成原始数据,X=pca.inverse_transform(newX)

属性:

components_ :返回具有最大方差的成分。

explained_variance_ratio_:返回 所保留的n个成分各自的方差百分比。

n_components_:返回所保留的成分个数n。

mean_:

noise_variance_:

8.参考:https://blog.csdn.net/SA14023053/article/details/51817650

梯度提升回归(Gradient boosting regression,GBR)是一种从它的错误中进行学习的技术。它本质上就是集思广益,集成一堆较差的学习算法进行学习。有两点需要注意: 
(1)每个学习算法准备率都不高,但是它们集成起来可以获得很好的准确率。 
(2) 这些学习算法依次应用,也就是说每个学习算法都是在前一个学习算法的错误中学习
from sklearn.ensemble import GradientBoostingRegressor as GBR

gbr = GBR() gbr.fit(X, y)

gbr_preds = gbr.predict(X)

(1)n_estimators,指GBR使用的学习算法的数量。通常,如果你的设备性能更好,可以把n_estimators设置的更大,效果也会更好。还有另外几个参数要说明一下。

(2)在优化其他参数之前先调整max_depth参数。因为每个学习算法都是一颗决策树,max_depth决定了树生成的节点数。选择合适的节点数量可以更好的拟合数据,而更多的节点数可能造成拟合过度。

(3)loss参数决定损失函数,也直接影响误差。ls是默认值,表示最小二乘法(least squares)。还有最小绝对值差值,Huber损失和分位数损失(quantiles)等等
9.线性回归:输入项分别乘以常量,再将结果相加。非线性回归:输出可能是输入的乘积。

参考:https://blog.csdn.net/qq_36330643/article/details/77649896

10:数据标准化处理

(1)归一化数据:不同特征之间数值差距太大,如果这几个特征同等重要,则需要将数值归一化:

如将取值范围处理为0到1或者-1到1之间,newvalue = (oldvalue-min)/(max-min)

min和max分别是数据集中的最小特征值和最大特征值。

 

from sklearn.preprocessing import MinMaxScaler

mm = MinMaxScaler()

mm_data = mm.fit_transform(data)

origin_data = mm.inverse_transform(mm_data)

(2)标准化:所有特征值都减去各自的均值并除以方差。

 

from sklearn.preprocessing import StandardScaler

ss = StandardScaler()

std_data = ss.fit_transform(data)

origin_data = ss.inverse_transform(std_data)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值