机器学习
文章平均质量分 63
么心learning
nothing
展开
-
Pandas高级:query方法教你优雅的查询
好久好久没写博客了。最近看到个很实用的pandas方法,记录下。query()DataFrame.query(expr,inplace=False,**kwargs),用于通过boolean表达式来查询dataframe中的列。主要参数为expr,它是字符串表达式,有如下说明:要评估的查询字符串。可以在环境中引用变量,方法是在变量前添加一个@字符,例如@a + b。可以在反引号内将包含空格或运算符的列名引用起来。 这样,您还可以转义以数字开头或Python关键字的名称。 基本上是..原创 2020-12-19 12:50:32 · 12729 阅读 · 10 评论 -
问题解决:Expected 2D array, got 1D array instead,Reshape your data either using array.reshape(-1, 1) i
y = df['OUT_AM'] 建模时遇到的错误:ValueError: Expected 2D array, got 1D array instead:array=[5.600000e+03 3.500000e+03 2.000000e+02 ... 5.072458e+06 1.170000e+04 3.980000e+04].Reshape your data eithe...原创 2019-05-16 13:38:47 · 2829 阅读 · 0 评论 -
数据分析:Pandas自定义describe方法,一行代码查看数据集各列的描述
Pandas提供describe方法,可以查看各列的计数、均值、最大最小值等,功能强大。下面介绍一种可根据自身要求,添加各个特征的其他描述的方法。df.describe().T.assign(missing_rate = df.apply(lambda x : (len(x)-x.count())/float(len(x))))T为转置,assign为添加的列。上述代码实现了,展示...原创 2019-05-08 09:16:38 · 7037 阅读 · 1 评论 -
数据分析:使用Imblearn处理不平衡数据(过采样、欠采样)
现实环境中,采集的数据(建模样本)往往是比例失衡的。比如网贷数据,逾期人数的比例是极低的(千分之几的比例)。对于这样的数据很难建立表现好的模型。好在Python有Imblearn包,它就是为处理数据比例失衡而生的。一.安装Imblearn包pip3 install imblearn二.过采样正样本严重不足,那就补充正样本。使用imblearn包中的over_sampling进行过...原创 2019-05-07 15:38:08 · 23017 阅读 · 6 评论 -
Seaborn:拟合柱状图分布曲线
柱状图在做数据分析中使用很多,有时我们可以将柱状图的分布拟合成曲线,看看是否服从正态分布。import seaborn as sns import matplotlib as mpl sns.set_palette("hls") mpl.rc("figure", figsize=(6,4)) #将数据划分成30个状态图,并拟合分布曲线sns.distplot(df['DXMASC...原创 2019-05-03 17:16:37 · 4212 阅读 · 0 评论 -
数据分析:各种方法
iv值,MIC值,KS值,相关系数,皮尔森相关系数计算方法。# -*- coding: utf-8 -*-# @Time : 2019/2/14 下午4:19# @Author : yangchen# @FileName: IV.py# @Software: PyCharm# @Blog :https://blog.csdn.net/opp003/articlei...原创 2019-05-09 16:30:55 · 423 阅读 · 0 评论 -
Pandas高级:合并数据集concat
本文主要介绍pandas中常用的数据合并的方法concat。先定义一个生产数据的函数:"""一个简单的DataFrame"""def make_df(cols, ind): data = {c: [str(c) + str(i) for i in ind] for c in cols} return pd.DataFrame(data, ind...原创 2019-01-22 10:49:40 · 424 阅读 · 0 评论 -
Pandas高级:你真的会删除缺失值吗?
数据处理过程中,缺失值的处理是经常会遇到的。很多时候,对缺失值的处理是删除。大家都知道pandas提供dropna方法,可以快速删除数据中的缺失值。但是简单的dropna却有很多未知方法在里面。一.发现缺失值Pandas 数据结构有两种有效的方法可以发现缺失值:isnull() 和 notnull()。每种方法都 返回布尔类型的掩码数据,例如:In[13]: data = pd.Se...原创 2019-01-21 11:19:52 · 6306 阅读 · 0 评论 -
数据分析:异常值检测--箱型图
在做数据分析时,我们免不了要检查数据中的异常值,但是什么样的数据算作异常呢。有人说很大或者很小的值,那到底多大多小的值算异常。箱型图就可以很好的解决这个问题。我们都知道折线图、柱状图等,但很少使用过箱型图。关于箱型图,百度百科的解释为:箱形图(Box-plot)又称为盒须图、盒式图或箱线图,是一种用作显示一组数据分散情况资料的统计图。因形状如箱子而得名。在各种领域也经常被使用,常见于品质管理。...原创 2018-12-12 09:24:33 · 17601 阅读 · 0 评论 -
机器学习:Python实现纯代码逻辑回归算法
之前写了一篇逻辑回归的理论知识,写得还算详尽,包含了公式的详细推导过程。这篇文章将结合之前的理论推导,通过Python代码实现逻辑回归算法,并用来预测鸢尾花种类。由于这篇文章是对照着之前的理论文章进行讲解的,所以最好先看前一篇理论文章,再看这篇实践文章。理论的文章链接为:https://blog.csdn.net/opp003/article/details/8478449上一篇的文章目标是得到...原创 2018-12-10 18:55:16 · 818 阅读 · 0 评论 -
机器学习:sklearn算法参数选择--网格搜索
机器学习中很多算法的参数选择是个比较繁琐的问题,人工调参比较费时,好在sklearn给我们提供了网格搜索参数的方法,其实就是类似暴力破解,先设定一些参数的取值,然后通过gridsearch,去寻找这些参数中表现的最好的参数。我们依旧使用上一节的泰坦尼克号生存者预测数据集。同样使用随机森林算法,看看girdsearch如何使用。先设置要调的参数和对应的取值:param_grid = {...原创 2018-12-14 10:28:05 · 3274 阅读 · 0 评论 -
机器学习:Python模型的保存与读取
在学习机器学习的过程中,很多人都应该有这样的疑问:模型训练好了,以后要用怎么办呢?肯定不能再跑一边数据,重新训练模型以供使用,因为这样太费时间。最好的办法当然是,训练和预测分开。训练好模型后,将模型保存好,当需要预测时,直接读取模型文件来调用,进行预测。无论是sklearn还是TensorFlow,都有模型的保存和调用方法。这里我们介绍使用pickle进行模型保存和调用的方法。1.导入pick...原创 2018-12-04 09:20:55 · 13514 阅读 · 2 评论 -
机器学习:sklearn模型指标和特征贡献度查看
模型训练完成后,即使模型评估很好,各项指标都很到位,业务人员肯定也是心里没底的,哪怕有模型公式,他们也看不懂啊。咋整,当然是先把模型的重要评估指标打印给他们看,再把特征贡献度从大到小,画成图给他们看啦。今天就通过sklearn实现模型评估指标和特征贡献度的图形查看。本文的数据集采用泰坦尼克号幸存者数据。使用sklearn的决策树和随机森林进行预测,然后查看模型的评估指标,最后将特征的贡献度从大...原创 2018-12-13 11:30:12 · 28315 阅读 · 13 评论 -
问题解决:'numpy.int64' object has no attribute 'timestamp'
在学习Harrison的股票分析时,按照H神的代码运行时报错了。错误信息为:'numpy.int64' object has no attribute 'timestamp'这是由于股票数据是按时间作为index的,但是直接读取数据,是无法将data列作为index的,所以在pandas读取数据时,要设置下,代码如下所示:df = pd.read_csv('google.csv', ...原创 2018-12-03 17:56:32 · 23993 阅读 · 1 评论 -
机器学习:样本比例失衡的处理
最近在做个项目,样本比例严重失衡,正负样本比例差不多1:10的样子。如此严重失衡的样本比例,模型训练的效果自然不会好,甚至很差。还是那句话,数据决定了上限,模型只是逼近这个上限而已。那遇到这种情况我们改如何解决呢?方法如下:增加缺失样本这是最好也是最难的方法,因为一般样本比例严重失衡肯定是有原因的。比如预测信用卡逾期,逾期的人肯定是极少数,所以很难搜集更多的逾期样本。过采样复制样...原创 2018-11-28 10:34:28 · 4712 阅读 · 0 评论 -
机器学习:逻辑回归详细推导
如今机器学习、深度学习可谓炙手可热,人工智能也确实开始影响、改变着我们的生活。正因如此,很多同学开始接触或者学习这方面的知识。机器学习的入门是有难度的,因为它不仅要求你会编码,还要你熟悉高等数学,比如线性代数,微积分等,除此之外,还要懂统计学。如果你想入门机器学习,那么一定要好好学习逻辑回归。原因如下: 1.逻辑回归可以帮你更好地理解机器学习; 2.逻辑回归已经可以解决多数问题...原创 2018-12-04 15:53:18 · 502 阅读 · 0 评论 -
机器学习:图文详解模型评估指标ROC/AUC
模型训练好,必须要通过各种指标去衡量模型的好坏,也就是模型的泛化能力。本文主要介绍分类的模型的评估指标—ROC和AUC。1.混淆矩阵对于二分类的模型,预测结果与实际结果分别可以取0和1。我们用N和P代替0和1,T和F表示预测正确和错误。将他们两两组合,就形成了下图所示的混淆矩阵(注意:组合结果都是针对预测结果而言的)。P(Positive):代表1N(Negative):代表0T(Tru...原创 2018-11-28 21:21:44 · 2038 阅读 · 0 评论