Python
文章平均质量分 81
毛飞龙
这个作者很懒,什么都没留下…
展开
-
Mac/Linux系统matplotlib中文支持问题
matplotlib是python中最常用的数据可视化分析工具,Mac和Linux系统无中文字体,不支持中文显示(希望后续可以改进),需要进行字体的下载和设置才能解决。笔者经过实践,发现Mac系统和Linux系统解决方案略有区别,因此分别记录一下,供读者参考。原创 2024-08-27 13:47:42 · 1018 阅读 · 0 评论 -
使用miniconda构建数据科学环境
数据科学中,不同时期项目代码往往是由不同的版本的python和第三方数据科学包构建,这些不同版本往往会存在兼容性问题,要运行这些代码,需要管理不同的版本的安装包。Conda是一个开源的包管理和环境管理系统,环境管理允许用户创建不同的独立的虚拟环境,可以在其中安装不同版本的python和包,而且支持方便快速地切换虚拟环境anaconda和miniconda都集成了conda,二者的区别是anaconda预安装了300多个常用的数据科学包,安装包非常大(安装需要4~5G空间),有图形化界面,比较适合新手使用。原创 2024-08-25 21:53:57 · 1057 阅读 · 0 评论 -
Google 开源运筹工具OR-Tools安装和使用
OR-Tools简介、安装和用法示例,用法示例为一个线性规划问题原创 2024-03-22 08:51:54 · 2061 阅读 · 0 评论 -
Python数据分析操作-时间序列
本文为python时间数据处理方法笔记,分享工作中实用的时间数据处理方法,后续持续更新原创 2022-07-09 12:09:25 · 606 阅读 · 0 评论 -
机器学习-集成学习-提升树-LightGBM
GBDT (Gradient Boosting Decision Tree) 是机器学习中一个长盛不衰的模型,该模型具有训练效果好、不易过拟合等优点。在各种数据挖掘竞赛中也是致命武器,据统计Kaggle上的比赛有一半以上的冠军方案都是基于GBDT。而LightGBM(Light Gradient Boosting Machine)是一个实现GBDT算法的框架,支持高效率的并行训练,并且具有更快的训练速度、更低的内存消耗、更好的准确率、支持分布式可以快速处理海量数据等优点原创 2022-01-02 12:30:52 · 333 阅读 · 0 评论 -
机器学习-集成学习-提升树-Xgboost
xgboost 的全称是eXtreme Gradient Boosting,由华盛顿大学的陈天奇博士提出,在Kaggle的希格斯子信号识别竞赛中使用,因其出众的效率与较高的预测准确度而引起了广泛的关注。GBDT算法只利用了一阶的导数信息,xgboost对损失函数做了二阶的泰勒展开,并在目标函数之外加入了正则项对整体求最优解,用以权衡目标函数的下降和模型的复杂程度,避免过拟合。所以不考虑细节方面,两者最大的不同就是目标函数的定义,接下来就着重从xgboost的目标函数定义上来进行介绍。原创 2022-01-02 11:47:41 · 647 阅读 · 0 评论 -
机器学习-集成学习-梯度提升决策树(GBDT)
提升树(Boosting Tree)是以分类树或者回归树位基本分类器到提升方法,提升树被认为是统计学习中性能最好的方法之一Boosting方法训练基分类器时采用串行的方式,各个基分类器之间有依赖。它的基本思路是将基分类器层层叠加,每一层在训练的时候,对前一层基分类器分错的样本,给予更高的权重(Ada Boosting),或者让新的预测器对前一个预测器到残差进行拟合(GBDT)。预测时,根据各层分类器的结果的加权得到最终结果。原创 2022-01-01 21:34:03 · 3400 阅读 · 0 评论 -
机器学习-集成学习:随机森林(Random Forest)
内容参考:https://github.com/NLP-LOVE/ML-NLP/tree/master/Machine%20Learning/3.1%20Random%20Forest略做修改0.集成学习如果你随机向几千专家询问一个复杂的问题,然后汇总他们的回答,在许多情况下,你会发现,这个汇总的答案比最好的那个专家回答得要好。同样,如果你聚合一组预测器(比如分类器或者回归器)的预测,得到的预测结果也比最好的单个预测器要好,这种聚合一组预测器来进行预测的方法,称为集成学习。例如..原创 2021-12-27 20:41:01 · 2511 阅读 · 0 评论 -
机器学习-决策树(Decision Tree)
内容参考自:ML-NLP/Machine Learning/3.Desition Tree at master · NLP-LOVE/ML-NLP · GitHub,有修改1. 什么是决策树1.1 决策树的基本思想其实用一下图片能更好的理解LR模型和决策树模型算法的根本区别,我们可以思考一下一个决策问题:是否去相亲,一个女孩的母亲要给这个女海介绍对象。大家都看得很明白了吧!LR模型是一股脑儿的把所有特征塞入学习,而决策树更像是编程语言中的if-else一样,去做条件判断,这就是根本性的区原创 2021-12-25 21:04:44 · 717 阅读 · 0 评论 -
机器学习-逻辑斯蒂回归(Logistic Regression)
注:内容转自https://github.com/NLP-LOVE/ML-NLP/tree/master/Machine%20Learning,略有修改。目录逻辑1. 什么是逻辑斯蒂回归2. 什么是Sigmoid函数3. 损失函数是什么4.可以进行多分类吗?5.逻辑斯蒂回归有什么优缺点6. 逻辑斯蒂回归有哪些应用7. 逻辑斯蒂回归常用的优化方法有哪些7.1 一阶方法7.2 二阶方法:牛顿法、拟牛顿法:8. 逻辑斯特回归为什么要对特征进行离散化。9. 逻辑回原创 2021-12-12 17:55:23 · 3313 阅读 · 0 评论 -
机器学习-线性回归(Linear Regression)
1.什么是线性回归线性:两个变量之间的关系是一次函数关系的——图象是直线,叫做线性。 非线性:两个变量之间的关系不是一次函数关系的——图象不是直线,叫做非线性。 回归:人们在测量事物的时候因为客观条件所限,求得的都是测量值,而不是事物真实的值,为了能够得到真实值,无限次的进行测量,最后通过这些测量数据计算回归到真实值,这就是回归的由来。2. 能够解决什么样的问题对大量的观测数据进行处理,从而得到比较符合事物内部规律的数学表达式。也就是说寻找到数据与数据之间的规律所在,从而就可以模拟出结果,也就原创 2021-12-05 16:57:44 · 2077 阅读 · 0 评论 -
scikit_learn中fit()/transform()/fit_transform()区别和联系
函数功能解释fit()根据训练集数据学习得到数据集的特征,比如均值、中位数、标准差等等transform()将fit()学到数据集特征,应用到数据集,比如学习到数据集平均数为6,应用到填充数据中的缺失值fit_transform() = fit()+transform()即将从数据集中学到的特征(均值、中位数、标准差)应用到数据集中举例此处以使用均值填充缺失值举例>>> import numpy as np>>> from skl.原创 2021-11-29 22:08:23 · 1911 阅读 · 0 评论 -
Python+Matplotlib制作动画
转载自:https://www.cnblogs.com/endlesscoding/p/10308111.html看到一篇觉得非常不错的Python+Matplotlib制作动画的方法转载 2021-09-04 22:02:38 · 254 阅读 · 0 评论 -
Python中可变数据类型和不可变数据类型
python中数据类型(红色为可变类型)1、字符串 str2、布尔类型 bool3、整数 int4、浮点数 float5、元组 tuple6、日期 date7、列表 list8、字典 dict9、集合 set可变类型和不可变类型的定义这个定义是基于内存地址来说的可变数据类型:变量引用的数据类型,在更改数值的时候,存在不开辟新内存的行为,此数据类型为可变数据类型。不可变数据类型 :变量引用的数据类型,在更改数值的时候,不存在不开辟新内存的行...原创 2021-08-07 06:52:03 · 4183 阅读 · 3 评论 -
Python地理可视化工具包 folium介绍
本文内容转载自:https://www.cnblogs.com/feffery/p/9282808.html一、简介 folium是js上著名的地理信息可视化库leaflet.js为Python提供的接口,通过它,我们可以通过在Python端编写代码操纵数据,来调用leaflet的相关功能,基于内建的osm或自行获取的osm资源和地图原件进行地理信息内容的可视化,以及制作优美的可交互地图。其语法格式类似ggplot2,是通过不断添加图层元素来定义一个Map对象,最后以几种方式将Map对象展现出来。转载 2021-07-22 16:37:30 · 3963 阅读 · 1 评论 -
支持向量机原理及scikit-learn实现
引言支持向量机(SVM)是一个功能强大并且全面的机器学习模型,它能够执行线性或者非线性分类、回归,甚至异常值检测任务。它是机器学习最受欢迎的模型之一,任何对机器学习感兴趣的人都应该在工具箱中配置一个。SVM特别适用于中小型复杂数据分类。目录引言线性可分和线性不可分线性可分数学定义(二维):线性可分情况下的最优分隔平面线性可分情况下最优分隔平面的数学理论(优化理论)二次规划问题线性不可分情况下的最优分隔平面少数样本导致线性不可分情况大量样本线性不可分情况线性不可原创 2021-02-17 22:09:46 · 926 阅读 · 0 评论 -
Pandas数据分析常用数据操作(3年总结)
原创文章,转载请注明来源,谢谢导入设置import odpsimport numpy as npimport pandas as pdimport matplotlib as mplimport matplotlib.pyplot as pltplt.rcParams['font.sans-serif']=['SimHei'] # matplotlib画图中文支持plt.rcParams['axes.unicode_minus']=False # matplotlib画图原创 2021-01-09 20:48:56 · 1630 阅读 · 1 评论 -
嵩天-Python语言程序设计程序题--第九周:Python计算生态纵览
前言:嵩天老师的《Python语言程序设计课程》被评为国家精品课程,在幕课上累计超过11万学员,里面的习题对初学者入门Python,提高编程实战能力很有帮助。因此,我想把自己学习这门课程作业分享出来,与大家一起学习交流。目录系统基本信息获取描述输入输出示例二维数据表格输出描述输入输出示例系统基本信息获取描述获取系统的递归深度、当前执行文件路径、系统最大UNICODE编码值等3个信息,并打印输出。原创 2020-12-02 20:17:42 · 341 阅读 · 0 评论 -
嵩天-Python语言程序设计程序题--第八周:程序设计方法学
前言:嵩天老师的《Python语言程序设计课程》被评为国家精品课程,在幕课上累计超过11万学员,里面的习题对初学者入门Python,提高编程实战能力很有帮助。因此,我想把自己学习这门课程作业分享出来,与大家一起学习交流。目录英文字符的鲁棒输入描述输入输出示例数字的鲁棒输入描述输入输出示例英文字符的鲁棒输入描述获得用户的任何可能输入,将其中的英文字符进行打印输出,程序不出现错误。原创 2020-11-21 17:51:24 · 546 阅读 · 0 评论 -
嵩天-Python语言程序设计程序题--第七周:文件和数据格式化
前言:嵩天老师的《Python语言程序设计课程》被评为国家精品课程,在幕课上累计超过11万学员,里面的习题对初学者入门Python,提高编程实战能力很有帮助。因此,我想把自己学习这门课程作业分享出来,和大家一起学习交流目录文件行数文件字符分布文件独特行数CSV格式列变换CSV格式数据清洗文本的平均列数 描述 输入输出示例CSV格式清洗与转换 描述 输入输出示例文件行数打印输出附件文件的有效行数,注意:空行不计算为有效行数。...原创 2020-11-21 16:58:17 · 1864 阅读 · 0 评论 -
文本字符串中提取数据进行分析
需求在进行数据分析的时候,有时候会碰到需要从文本字符串中提取需要的数据来进行分析的情况,这种需求在网络爬虫数据分析非常常见。比如,需要下列表格“基础薪资规则”字段中提取阶梯单量和价格。而且表格中,大部分规则是4档单量和价格,也有部分是3档规则和价格。格式为:第1档单量 第2档单量 第3档单量 第4档单量 第1档价格 第2档价格 第3档价格 第4档价格 200 250 300 9999 3.8 4.8 5.0原创 2020-11-09 20:44:45 · 1180 阅读 · 0 评论 -
Python中都全局变量和局部变量
定义全局变量:函数体之外定义的变量局部变量:函数体之内定义的变量下述代码中,t是全局变量,m是局部变量t = 1def func(x): m = 2 return x//m规则1. 局部变量和全局变量是不同的变量,即使变量名相同局部变量是函数中的占位符,与全局变量可能重名,但不是同一个变量 函数运行结束后,局部变量被释放 可以使用global保留字在函数中使用全局变量看下面两个例子:例1: 全局变量s=100,局部变量s=3628800,函数调用完原创 2020-10-31 17:14:44 · 7504 阅读 · 0 评论 -
plotly之甘特图绘制
应用场景时间顺序的数据分析往往需要用到甘特图,比如骑手出勤的时间分析,商户出餐的时间分析等等plotly有一个专门绘制甘特图的模块figure_factory.create_gantt(),可以很方便地绘制甘特图。函数参数说明plotly.figure_factory.create_gantt(df,colors=None,index_col=None,show_colorbar=False,reverse_colors=False,title='GanttChart',bar...原创 2020-10-27 21:48:29 · 3677 阅读 · 5 评论 -
python格式化输出之format用法
这篇博客总结不错https://www.cnblogs.com/lovejh/p/9201219.html转载 2020-10-18 09:57:12 · 173 阅读 · 0 评论 -
嵩天-Python语言程序设计程序题--第六周:组合数据类型
前言:嵩天老师的《Python语言程序设计课程》被评为国家精品课程,在幕课上累计超过11万学员,里面的习题对初学者入门Python,提高编程实战能力很有帮助。因此,我想把自己学习这门课程作业分享出来,和大家一起学习交流目录实例9:基本统计值计算描述输入输出示例实例10:文本词频统计 -- Hamlet描述输出样例人名独特性统计描述输入输出示例字典翻转输出描述输入格式输入输出示例《沉默的羔羊》之最多单词描述输入格式输出格式输入输出示例原创 2020-11-14 17:08:41 · 4268 阅读 · 0 评论 -
嵩天-Python语言程序设计程序题--第五周:函数和代码复用
前言:嵩天老师的《Python语言程序设计课程》被评为国家精品课程,在幕课上累计超过11万学员,里面的习题对初学者入门Python,提高编程实战能力很有帮助。因此,我想把自己学习这门课程作业分享出来,希望对Python初学者有所帮助目录实例7:七段数码管绘制描述实例8:科赫雪花小包裹描述任意累积描述输入输出示例斐波那契数列计算描述输入输出示例汉诺塔实践描述输入格式输出格式输入输出示例随机密码生成描述输入输出示例连续质数计算描原创 2020-11-08 10:12:37 · 754 阅读 · 0 评论 -
嵩天-Python语言程序设计程序题--第四周:程序的控制结构
前言:嵩天老师的《Python语言程序设计课程》被评为国家精品课程,在幕课上累计超过11万学员,里面的习题对初学者入门Python,提高编程实战能力很有帮助。因此,我想把自己学习这门课程作业分享出来,希望对Python初学者有所帮助目录实例5:身体质量指数BMI描述输入输出示例实例6:圆周率的计算描述输入输出示例整数的加减和描述输入格式输入输出示例三位水仙花数描述输入输出示例用户登录的三次机会描述输入输出示例四位玫瑰数输入输出.原创 2020-10-31 13:33:09 · 814 阅读 · 0 评论 -
嵩天-Python语言程序设计程序题--第三周:基本数据类型
实例3:天天向上的力量描述目录实例3:天天向上的力量描述输出实例4:文本进度条描述输出三次方格式化描述输入输出示例星号三角形描述输入输出示例恺撒密码描述输入输出平方根格式化描述输入输出示例字符串分段组合描述输入输出示例这.原创 2020-10-17 22:37:37 · 1520 阅读 · 0 评论 -
嵩天-Python语言程序设计程序题--第二周:基本图形绘制
前言:嵩天老师的《Python语言程序设计课程》被评为国家精品课程,在幕课上累计超过11万学员,里面的习题对初学者入门Python,提高编程实战能力很有帮助。因此,我想把自己学习这门课程作业分享出来,希望对Python初学者有所帮助目录实例2: Python蟒蛇绘制描述输出示例turtle正方形绘.原创 2020-10-18 08:27:59 · 709 阅读 · 2 评论 -
嵩天-Python语言程序设计程序题--第一周:Python基本语法元素
前言:嵩天老师的《Python语言程序设计课程》被评为国家精品课程,在幕课上累计超过11万学员,里面的习题对初学者入门Python,提高编程实战能力很有帮助。因此,我想把自己学习这门课程作业分享出来,希望对Python初学者有所帮助目录实例1: 温度转换描述输入输出数字形式转换 I描述输入输出示例温度转换 II描述输入输出货币转换 I描述输入输出Hello Word打印(略)数值运算描述输入输出示例实例1: 温度转换..原创 2020-10-18 09:37:12 · 526 阅读 · 0 评论 -
Python中import模块的两种模式
import <模块名>import pandasimport pandas as pd使用函数方式:<模块名>.<函数名>(<函数参数>),或者<模块别名>.<函数名>(<函数参数>)比如pandas.read_csv("data/stock.csv"),pd.read_csv("data/stock.csv")from <模块名> import <函数名>.原创 2020-10-11 18:44:14 · 723 阅读 · 0 评论 -
scipy.interpolate: 插值和平滑处理
scipy有很多插值函数(方法),按维度可分为一维、二维和多维的插值方法,按方法包括拉格朗日和泰勒插值方法等,具体插值函数可参阅如下介绍:https://docs.scipy.org/doc/scipy/reference/interpolate.html?highlight=scipy%20interpolate#module-scipy.interpolate一维插值这里简单介绍下一维插值方法interpolate.interp1dimport numpy as npfrom sci原创 2020-10-10 16:39:51 · 7787 阅读 · 1 评论 -
scipy.optimize.fsolve:用Python求解方程的解
例1:求解方程组的一个解:x0*cos(x1)=4,x1*x0-x1=5。需要注意两点:1.定义方程组,方程组要写出f(x)=0的形式(=0不需要写出来),所以原方程右边4和5都要移项到左边。2.求解方程都根,对于非线性方程,通常会有不止一个解(对于唯一解的线性方程,初始值的设置对方程的解没有影响),因此需要设置大致初始解(取值范围),这样方程在初始值附近按梯度下降进行求解,可得局部最优解3.第2步中的局部最优解不一定是满足方程的解,可以使用np.isclose(func...原创 2020-10-10 14:15:23 · 26060 阅读 · 4 评论 -
scipy.optimize.curve_fit-曲线拟合
Scipy是一个用于数学、科学、工程领域的常用软件包,可以处理插值、积分、优化、图像处理、常微分方程数值解的求解、信号处理等问题。它用于有效计算Numpy矩阵,使Numpy和Scipy协同工作,高效解决问题。原创 2020-10-09 19:53:28 · 9974 阅读 · 1 评论 -
Python 直接赋值、浅拷贝和深度拷贝解析
转自菜鸟教程:https://www.runoob.com/w3cnote/python-understanding-dict-copy-shallow-or-deep.html 直接赋值:其实就是对象的引用(别名)。 浅拷贝(copy):拷贝父对象,不会拷贝对象的内部的子对象。 深拷贝(deepcopy):copy 模块的 deepcopy 方法,完全拷贝了父对象及其子对象。 字典浅拷贝实例实例>>>a = {1: [1,2,3]} >&.转载 2020-07-06 15:36:50 · 139 阅读 · 0 评论 -
IntelliJ idea 给git下来的项目配置python环境(Anaconda)
对于IDEA集成开发环境,运行Python代码时需要配置Python解释器,没有正确配置时,直接运行代码会报错,例如:import pandas as pd ModuleNotFoundError: No module named pands.Anaconda是一款非常流行的Python数据分析工具,本文介绍在IDEA集成开发环境中配置Anaconda的python解释器对于已经存在的项目,设置IDEA 为Anaconda Python解释器的步骤如下:1. 选中项目,右键(Mac双指触控点原创 2020-06-15 18:39:06 · 2947 阅读 · 0 评论 -
分类变量如何设置变量值的显示顺序
在做数据分析的时候,有时候分类变量值默认的排序不是我们想要的,需要调整显示顺序,pandas可以通过pd.Categorical来设置分类变量的显示顺序。例如,对于数据分析教程常用的diamonds数据集,color等级是从J, I, H, G, F, E, D逐渐上升,如果要考察color等级和价格的关系,自然是希望color按照J, I, H, G, F, E, D顺序显示,但数据默认会按...原创 2019-12-07 19:47:59 · 1259 阅读 · 0 评论 -
向seaborn传递matplotlib绘图参数,精细地控制seaborn输出图形
1. matplotlib与seaborn的关系matplotlib绘图参数非常多,可以通过参数精细的控制图形输出,这是它的优点。但同时也很复杂,绘一个图常常需要很多行代码,需要使用者熟悉众多图形控制参数,不容易上手,这是它的缺点。seaborn是基于matplotlib的数据可视化软件包,本身并不画图,而是调用matplotlib进行绘图,在做探索式数据分析时,特别是对于dataframe数...原创 2019-12-07 18:22:17 · 1270 阅读 · 2 评论 -
Python中列表索引为的负数时,意义与R不同
比如有一个列表,list1 = [a, b ,c ,d ,e]- 对R来说,负数索引表示在原有的列表中去除该索引对应的元素,如list[-1]就是在原有的列表中去除第1个元素,所以结果是 list1[-1] = [b, c, d, e](R中列表元素序号从1开始)- - 对Python来说,负数索引表示从右边往左数,最右边的元素的索引为-1,倒数第二个元素为-2.,。。。list[-1] = e-...原创 2018-07-04 21:36:46 · 16840 阅读 · 0 评论 -
Enthought Canopy中第三方软件包的安装(package manager中不含的包)
一、背景之前学Python的时候,用的是《利用Python进行数据分析》,里面推荐的是Enthought canopy,后面接触到Anaconda后,才发现这个终端没有Anaconda好用。废话少说,偶尔用一用Python,也懒得重新安装了。二、问题:现在向要安装一个财经数据接口包tushare,由于是免费版本的Canopy,包的数量非常有限,没有这个包。打算用pip去安装,在...原创 2018-11-11 14:09:27 · 2618 阅读 · 1 评论