Python
文章平均质量分 88
anshuai_aw1
这个作者很懒,什么都没留下…
展开
-
Python: Matplotlib中subplots多子图绘图的一些tricks
本文转载自《Matplotlib中多子图绘图时,坐标轴及其label的几种排布方式》。目录1、最普通的2、只在最外层坐标轴显示 Label3、如果 x label和y label 都一样可以只显示一个4、刻度也只在最外侧显示5、或者Label仍然分开显示6、加入 colorbar7、整个 fig 共用一个 colorbar8、colorbar 横置9、...转载 2020-03-02 10:54:41 · 11003 阅读 · 1 评论 -
Python: 进行one-hot编码
在机器学习中,one-hot编码是对分类特征进行预处理的常用手段。本篇博客讲解了如何利用sklearn来进行one-hot编码。举一个简单的例子:>> from sklearn.preprocessing import OneHotEncoder>>> enc = OneHotEncoder()>>> enc.fit([[0, 0, 3...原创 2018-10-09 11:35:48 · 4397 阅读 · 0 评论 -
Windows下安装Python版本的prophet
prophet是Facebook开源的一款时序预测的工具。地址。在Mac和linux下比较好安装,在Windows下安装就比较坑了。所以,记录以下自己安装成功的过程。我的环境是win10 64位,python 3.6.1第一步:安装PyStanfbprophet依赖于PyStan,所以首先要安装PyStan库。我用的是Anaconda,直接pip install pystan...原创 2018-10-25 14:27:37 · 17342 阅读 · 4 评论 -
Python: pandas中多级索引的高级操作讲解
Pandas库十分强大,在之前的文章中我已经介绍过了切片操作iloc, loc和ix,本篇文章主要介绍针对多级索引的高级操作。本质上与单级索引的操作相同,但是要注意一些语法的格式。一、在Multiindex中使用loc我们先建立一个多级索引的Dataframe:import numpy as npimport pandas as pdarrays = [np.array(['ba...原创 2018-10-29 20:12:38 · 21098 阅读 · 3 评论 -
Python生成器(Generator)和yield用法详解
通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。所以,如果列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不断推算出后续的元素呢?这样就不必创建完整的list,从而节省大量的空间。在Python中,这种一边...原创 2018-11-16 15:49:12 · 7558 阅读 · 0 评论 -
Python:如何从字典的多value中的某个值得到这个多value?
在这里再次解释一下题目:目的:一个字典,存在着1key多value的现象,如果根据多value中的值,找到这个key,并且得到这个key对应的所有value?比如我们这里有一个字典:mydict = {'george':16,'amber':[19, 20]}我们想根据19,得到19和20。我这里提供2种方法:①:直接上代码,思路比较简单。# 找到19这个value...原创 2018-11-17 17:34:10 · 6424 阅读 · 0 评论 -
(一)常见的回归评价指标及代码实现与应用
每个机器学习模型都试图使用不同的数据集来解决具有不同目标的问题,因此,对于不同的机器学习任务,在充分理解上下文的基础上,选择合适的机器学习评价指标是非常重要的。只有了解了本次机器学习建立模型的任务,才能选择合适的评价指标。本篇博客关注回归问题的评价指标。先介绍常用的评价指标,然后用代码实现一下部分评价指标。分类问题的评价指标的问题随后会整理。一、回归指标(Regression Metrics...原创 2019-03-01 18:24:39 · 6033 阅读 · 3 评论 -
(二)常见的分类评价指标及代码实现与应用
在上一篇《(一)常见的回归评价指标及代码应用》中我们介绍了评价回归性能的指标。sklearn的官方文档《 Model evaluation: quantifying the quality of predictions》中,对于二分类,多分类和多标签问题,有非常详细的指标介绍和实现。本篇博客我们只介绍常见的分类评价指标,以及它们的代码实现与应用。文章目录一、二分类指标(Binary Clas...原创 2019-03-03 18:02:02 · 6116 阅读 · 3 评论 -
python:column_or_1d用法
今天在读代码的时候,发现Python sklearn的utils有个这样的函数:sklearn.utils.validation.column_or_1d。第一次遇到这个函数,记录一下用法。在机器学习任务中,这个函数一般是对数据集的Y进行操作。官方说明如下:可以看到对1维array进行raval()。warn是提出警告。这个警告是说,如果我们输入的y是2D的形式(shapes, 1...原创 2019-03-11 15:38:10 · 6423 阅读 · 0 评论 -
Python: 一文看懂pandas的透视表pivot_table
本文转载自知乎《Pandas | 一文看懂透视表pivot_table》,在原文基础上略有增删改。感谢原作者非常生动的例子。目录一、概述1.1 什么是透视表?1.2 为什么要使用pivot_table?二、如何使用pivot_table2.1 读取数据2.2Index2.3Values2.4Aggfunc2.5Columns2.6pivot_t...转载 2019-03-11 18:31:21 · 16118 阅读 · 9 评论 -
Python: pandas中iloc, loc和ix的区别和联系
Pandas库十分强大,但是对于切片操作iloc, loc和ix,很多人对此十分迷惑,因此本篇博客利用例子来说明这3者之一的区别和联系,尤其是iloc和loc。对于ix,由于其操作有些复杂,我在另外一篇博客专门详细介绍ix。首先,介绍这三种方法的概述:loc gets rows (or columns) with particular labels from the index. lo...原创 2018-09-21 16:51:46 · 18419 阅读 · 0 评论 -
Python: pandas中ix的详细讲解
在上一篇博客中,我们已经仔细讲解了iloc和loc,只是简单了提到了ix。这是因为相比于前2者,ix更复杂,也更让人迷惑。因此,本篇博客通过例子的解释试图来描述清楚ix,尤其是与iloc和loc的联系。目录1 使用ix切分Series1.1 特点1举例1.2 特点2举例2 在Dataframe中使用ix实现复杂切片3 参考文献首先,再次介绍这三种方法的概述:lo...原创 2018-09-21 15:59:06 · 59719 阅读 · 1 评论 -
Python: Pandas中stack和unstack的形象理解
Python的pandas库是我们经常用到的库之一,不可避免地会应用到数据的reshape。其中,stack和unstack是我们经常用到的操作之一。很多人对这2个操作比较迷惑,在这里,本博客利用几个简单的例子和图来说明这2个操作。1 概述stack和unstack是python进行层次化索引的重要操作。层次化索引就是对索引进行层次化分类,便于使用,这里的索引可以是行索引,也可以是列索引。...原创 2018-09-24 18:22:25 · 21228 阅读 · 6 评论 -
Python中if __name__ == '__main__',__init__和self 的解析
文章主要包括2部分内容,分别是if __name__ == '__main__'的解析和__init__与self的解析。目录1 if __name__ == '__main__'1.1 摘要1.2程序入口1.2.1一个.py文件被其他.py文件引用1.2.2修改const.py,添加if __name__ == "__main__"2 __init__与self...原创 2018-09-03 10:32:21 · 100014 阅读 · 35 评论 -
Python中的lambda和apply用法
目录1 lambda1.1 举最简单的例子1.2 再举一个普通的例子2 Apply2.1 举例2.2 下面的例子是DataFrame中apply的用法3 参考文献1 lambdalambda原型为:lambda 参数:操作(参数)lambda函数也叫匿名函数,即没有具体名称的函数,它允许快速定义单行函数,可以用在任何需要函数的地方。这区别于def定义的函数。...原创 2018-09-03 12:38:10 · 114884 阅读 · 11 评论 -
Python引入自定义模块
目录1 python基本概念1.1 python模块1.2 python包2 场景应用2.1 导入同级目录文件2.2 导入子目录文件自己手动写了一些.py文件,在互相import的时候总是出错。搞了一下午,终于解决了问题。要注意得是,必须要理清python中的几个概念:模块(Module)和包。1 python基本概念1.1 python模块Python 模...原创 2018-09-03 12:46:47 · 7167 阅读 · 0 评论 -
Python 中的下划线命名规则
目录1 变量1.1 _xxx1.2 __xxx1.3 __xxx__1.4 xxx_1.52 函数和方法2.1 受保护方法:小写和一个前导下划线2.2 特殊方法:小写和两个前导下划线,两个后置下划线3. 类4. 模块和包5.参考文献如何定义python中变量名,函数名,类名以及包名1 变量1.1 _xxx单下划线开头的变量,表明这是一...原创 2018-09-07 16:09:09 · 1536 阅读 · 0 评论 -
Python:sklearn数据预处理中fit(),transform()与fit_transform()的区别
1 概述注意这是数据预处理中的方法:Fit(): Method calculates the parameters μ and σ and saves them as internal objects.解释:简单来说,就是求得训练集X的均值啊,方差啊,最大值啊,最小值啊这些训练集X固有的属性。可以理解为一个训练过程Transform(): Method using these cal...原创 2018-09-07 16:17:23 · 65832 阅读 · 4 评论 -
利用sklearn中pipeline构建机器学习工作流
当我们对训练集应用各种预处理操作时(特征标准化、主成分分析等等), 我们都需要对测试集重复利用这些参数,以免出现数据泄露(data leakage)。pipeline 实现了对全部步骤的流式化封装和管理(streaming workflows with pipelines),可以很方便地使参数集在新数据集(比如测试集)上被重复使用。Pipeline可以将许多算法模型串联起来,比如将特征提取...原创 2018-09-07 16:36:47 · 2605 阅读 · 0 评论 -
利用TPOT完成自动化机器学习
目录1 概述2 使用TPOT2.1 TPOT代码2.2 评估函数2.3 内置TPOT配置2.4 定制TPOT的操作符和参数2.5 NOTE3 TPOT API4 参考文献首先,什么是自动化机器学习?正如Sebastian Raschka描述的那样,假如说计算机程序是关于自动化的,那么机器学习可以看做是“关于自动化的自动化”。那么自动化机器学习就是关于自动...原创 2018-09-07 16:42:25 · 11118 阅读 · 5 评论 -
时间序列分析之指数平滑法(holt-winters及代码)
在做时序预测时,一个显然的思路是:认为离着预测点越近的点,作用越大。比如我这个月体重100斤,去年某个月120斤,显然对于预测下个月体重而言,这个月的数据影响力更大些。假设随着时间变化权重以指数方式下降——最近为0.8,然后0.8**2,0.8**3…,最终年代久远的数据权重将接近于0。将权重按照指数级进行衰减,这就是指数平滑法的基本思想。指数平滑法有几种不同形式:一次指数平滑法针对没有趋势和...原创 2018-09-07 16:45:20 · 65638 阅读 · 3 评论