自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(102)
  • 收藏
  • 关注

原创 机器学习之朴素贝叶斯学习笔记

朴素贝叶斯一、概述朴素贝叶斯算法是有监督的学习算法,解决的是分类问题,如客户是否流失、是否值得投资、信用等级评定等多分类问题。该算法的优点在于简单易懂、学习效率高、在某些领域的分类问题中能够与决策树、神经网络相媲美。但由于该算法以自变量之间的独立(条件特征独立)性和连续变量的正态性假设为前提,就会导致算法精度在某种程度上受影响。二、朴素贝叶斯理论朴素贝叶斯是贝叶斯决策理论的一部分,所以在学习朴素贝叶斯之前有必要快速了解一下贝叶斯决策理论。1、贝叶斯决策理论假设现在我们有一个数据集,它由两类数据组

2021-01-18 20:44:08 4518

原创 非常棒的LaTeX公式手册

LaTeX公式手册https://1024th.github.io/MathJax_Tutorial_CN/#/

2021-01-18 19:42:26 525

原创 机器学习之决策树学习笔记

决策树1、决策树的概念决策树是什么?决策树(decision tree)是一种基本的分类与回归方法,通俗的讲也就是一颗用于决策的树。决策树长什么样呢?举个通俗易懂的例子,如下图所示的流程图就是一个决策树。这个决策树中,长方形代表判断模块(decision block),也就是用于条件判断的模块。椭圆形代表终止模块(terminating block),表示已经得出结论,可以终止运行。从判断模块引出的左右箭头称作为分支(branch),它可以达到另一个判断模块或者终止模块。回到这个流程图,

2021-01-14 11:12:48 595

原创 AI知识树

AI知识树AI+领域知识打造统一的系统,就像爱因斯坦想要找到统一宇宙规律的公式一样。知识树核心就是AI+领域知识,在吸取了大量的知识养分之后,逐渐成长,从小树变成大树,大树在秋季会结果,当然随着时间的积累,这颗知识树也会结果,每一个枝丫代表着一个大的领域或者方向,每一篇树叶都是领域知识,每一颗果实就对应着一个专业领域的应用成果,有的领域的果实因为丰富的领域知识可能长的比较好,枝繁叶茂,硕果累累。有的领域可能由于领域知识不足,长得稀稀疏疏,果实不大,有点营养不良,这时就需要时间来进一步去促进和推动领域的发

2021-01-10 11:01:45 509

原创 机器学习之K-近邻算法学习笔记

K-近邻算法1、k-近邻法简介k近邻法(k-nearest neighbor, k-NN)是1967年由Cover T和Hart P提出的一种基本分类与回归方法。它的工作原理是:存在一个样本数据集合,也称作为训练样本集,并且样本集中每个数据都存在标签,即我们知道样本集中每一个数据与所属分类的对应关系。输入没有标签的新数据后,将新的数据的每个特征与样本集中数据对应的特征进行比较,然后算法提取样本最相似数据(最近邻)的分类标签。一般来说,我们只选择样本数据集中前k个最相似的数据,这就是k-近邻算法中k的

2021-01-09 15:28:39 436

原创 解决spyder下使用matplotlib绘图中文显示不出来

在spyder的代码中导入下面的code:import matplotlib.pyplot as pltplt.rcParams["font.sans-serif"] = ["Microsoft YaHei"]plt.rcParams['axes.unicode_minus'] = False

2021-01-08 16:48:19 1766

原创 pandas之连接学习笔记

连接一、关系型连接1. 连接的基本概念把两张相关的表按照某一个或某一组键连接起来是一种常见操作,在关系型连接中,键 是十分重要的,往往用 on 参数表示。另一个重要的要素是连接的形式。在 pandas 中的关系型连接函数merge 和join 中提供了how 参数来代表连接形式,分为左连接left 、右连接 right 、内连接 inner 、外连接 outer ,它们的区别可以用如下示意图表示:从图中可以看到,所谓左连接即以左表的键为准,如果右表中的键于左表存在,那么就添加到左表,

2021-01-07 10:18:52 1236 1

原创 pandas之索引的变形stack和unstack

unstackunstack 函数的作用是把行索引转为列索引,例如下面这个简单的例子:In [41]: df = pd.DataFrame(np.ones((4,2)), ....: index = pd.Index([('A', 'cat', 'big'), ....: ('A', 'dog', 'small'), ....:

2021-01-06 20:37:16 455 1

原创 pandas之变形学习笔记

变形一、长宽表的变形什么是长表?什么是宽表?这个概念是对于某一个特征而言的。例如:一个表中把性别存储在某一个列中,那么它就是关于性别的长表;如果把性别作为列名,列中的元素是某一其他的相关特征数值,那么这个表是关于性别的宽表。下面的两张表就分别是关于性别的长表和宽表:In [3]: pd.DataFrame({'Gender':['F','F','M','M'], ...: 'Height':[163, 160, 175, 180]}) ...: Out[3]

2021-01-06 20:24:48 239 1

原创 pandas之分组groupby学习笔记

分组In [1]: import numpy as npIn [2]: import pandas as pd一、分组模式及其对象1. 分组的一般模式分组操作在日常生活中使用极其广泛,例如:依据 性别 分组,统计全国人口 寿命 的 平均值依据 季节 分组,对每一个季节的 温度 进行 组内标准化依据 班级 分组,筛选出组内 数学分数 的 平均值超过80分的班级从上述的几个例子中不难看出,想要实现分组操作,必须明确三个要素:分组依据 、 数据来源 、 操作及其返回结果 。同时从充分性的角度

2021-01-05 16:00:33 1261

原创 pandas之query方法和sample随机抽样

query方法在 pandas 中,支持把字符串形式的查询表达式传入 query 方法来查询数据,其表达式的执行结果必须返回布尔列表。在进行复杂索引时,由于这种检索方式无需像普通方法一样重复使用 DataFrame 的名字来引用列名,一般而言会使代码长度在不降低可读性的前提下有所减少。例如In [61]: df.query('((School == "Fudan University")&' ....: ' (Grade == "Senior")&' ..

2021-01-04 23:15:34 669

原创 pandas之滑动窗口学习笔记(shift, diff, pct_change)

窗口对象pandas 中有3类窗口,分别是滑动窗口 rolling 、扩张窗口 expanding 以及指数加权窗口 ewm 。滑窗对象要使用滑窗函数,就必须先要对一个序列使用 .rolling 得到滑窗对象,其最重要的参数为窗口大小 window 。In [95]: s = pd.Series([1,2,3,4,5])In [96]: roller = s.rolling(window = 3)In [97]: rollerOut[97]: Rolling [window=3,cen

2021-01-03 21:43:19 4830

原创 pandas之常用基本函数学习笔记

pandas之替换函数一般而言,替换操作是针对某一个列进行的,因此下面的例子都以 Series 举例。 pandas 中的替换函数可以归纳为三类:映射替换、逻辑替换、数值替换。其中映射替换包含 replace 方法、str.replace 方法以及 cat.codes 方法,此处介绍 replace 的用法。在 replace 中,可以通过字典构造,或者传入两个列表来进行替换:In [67]: df['Gender'].replace({'Female':0, 'Male':1}).head()O

2021-01-03 20:17:28 350

原创 python训练营—Python入门(下)

Python入门(下)简介Python 是一种通用编程语言,其在科学计算和机器学习领域具有广泛的应用。如果我们打算利用 Python 来执行机器学习,那么对 Python 有一些基本的了解就是至关重要的。本 Python 入门系列体验就是为这样的初学者精心准备的。本实验包括以下内容:函数函数的定义函数的调用函数文档函数参数函数的返回值变量作用域Lambda 表达式匿名函数的定义匿名函数的应用类与对象对象 = 属性 + 方法self 是什么?Python 的魔

2021-01-02 21:14:01 322

原创 python训练营—Python入门(上)

Python入门(上)简介Python 是一种通用编程语言,其在科学计算和机器学习领域具有广泛的应用。如果我们打算利用 Python 来执行机器学习,那么对 Python 有一些基本的了解就是至关重要的。本 Python 入门系列体验就是为这样的初学者精心准备的。本实验包括以下内容:变量、运算符与数据类型注释运算符变量和赋值数据类型与转换print() 函数位运算原码、反码和补码按位非操作 ~按位与操作 &按位或操作 |按位异或操作 ^按位左移操作 <

2020-12-29 23:24:17 693 1

原创 python训练营—Python入门(中)

Python入门(中)简介列表1. 列表的定义2. 列表的创建3. 向列表中添加元素4. 删除列表中的元素5. 获取列表中的元素6. 列表的常用操作符7. 列表的其它方法元组1. 创建和访问一个元组2. 更新和删除一个元组3. 元组相关的操作符4. 内置方法5. 解压元组字符串1. 字符串的定义2. 字符串的切片与拼接3. 字符串的常用内置方法4. 字符串格式化字典1. 可变类型与不可变类型2. 字典的定义3. 创建和访问字典4. 字典的

2020-12-29 22:41:01 217

原创 机器学习术语表

机器学习术语表A/B 测试 (A/B testing)一种统计方法,用于将两种或多种技术进行比较,通常是将当前采用的技术与新技术进行比较。A/B 测试不仅旨在确定哪种技术的效果更好,而且还有助于了解相应差异是否具有显著的统计意义。A/B 测试通常是采用一种衡量方式对两种技术进行比较,但也适用于任意有限数量的技术和衡量方式。...

2020-12-28 16:31:16 195

原创 python利用位运算实现快速计算

按位异或操作 ^1 ^ 1 = 01 ^ 0 = 10 ^ 1 = 10 ^ 0 = 0只有两个对应位不同时才为 100 00 01 01 -> 5^00 00 01 10 -> 6---00 00 00 11 -> 3异或操作的性质:满足交换律和结合律A: 00 00 11 00B: 00 00 01 11A^B: 00 00 10 11B^A: 00 00 10 11A^A: 00 00 00 00A^0: 00 00 11 00A^B^A

2020-12-27 21:04:12 316

原创 Pyecharts数据可视化 (1)

Pyecharts入门教程1、Pyecharts安装!pip install pyecharts导入from pyecharts.charts import Barfrom pyecharts import options as opts# 以下参数指定了使用Kesci提供的pyecharts_assets, 加载速度更快bar = ( Bar(opts.InitOpts(js_host="https://cdn.kesci.com/lib/pyecharts_assets/"))

2020-12-26 13:21:31 293 1

原创 pyecharts数据可视化 (2)

安装pyechartspip install pyecharts安装snapshot_seleniumpip install snapshot_selenium举例from pyecharts import options as optsfrom pyecharts.globals import ThemeType # 导入主题:https://pyecharts.org/#/zh-cn/themes # .LIGHT、.DARK、.CHALK、.ESSOS、.INFOGRA

2020-12-26 13:12:03 851

原创 seaborn、matplotlib、Pyecharts、Plotly数据可视化

seabornseaborn数据可视化matplotlibmatplotlib数据可视化官网matplotlib数据可视化中文版PyechartsPyecharts数据可视化中文版PlotlyPlotly数据可视化githubPlotly数据可视化官网

2020-12-25 16:18:57 726

原创 matplotlib可视化学习笔记 (1)

matplotlib可视化学习折线图plt.plot(x,y,linestyle,linewidth,color,marker,markersize,markeredgecolor,markerfactcolor,label,alpha) 参数说明x指定折线图的x轴数据;y指定折线图的y轴数据;linestyle指定折线的类型,可以是实线、虚线、点虚线、点点线等,默认文实线;linewidth指定折线的宽度marker可以为折线图添加点,该参数

2020-12-25 11:38:32 161

原创 matplotlib魔幻的表格操作

matplotlib表格操作表格视觉样式:Dataframe.style → 返回pandas.Styler对象的属性,具有格式化和显示Dataframe的有用方法样式创建:① Styler.applymap:elementwise → 按元素方式处理Dataframe② Styler.apply:column- / row- / table-wise → 按行/列处理Dataframe1.表格样式创建import numpy as npimport pandas as pdimport m

2020-12-24 17:21:14 210 1

原创 pandas入门教程(4)

分类df = pd.DataFrame({"id":[1,2,3,4,5,6], "raw_grade":['a', 'b', 'b', 'a', 'e', 'e']})df''' id raw_grade0 1 a1 2 b2 3 b3 4 a4 5 e5 6 e'''把raw_grade转换为分类类型df["grade"] = df["raw_grade

2020-12-23 16:51:42 144

原创 pandas入门教程(3)

时间序列pandas在对频率转换进行重新采样时拥有着简单,强大而且高效的功能(例如把按秒采样的数据转换为按5分钟采样的数据)。这在金融领域很常见,但又不限于此。rng = pd.date_range('1/1/2012', periods=50, freq='S')rng'''DatetimeIndex(['2012-01-01 00:00:00', '2012-01-01 00:00:01', '2012-01-01 00:00:02', '2012-01-01 0

2020-12-23 16:09:45 130

原创 pandas入门教程 (2)

pandas入门教程缺失值处理在pandas中,用np.nan来代表缺失值,这些值默认不会参与运算。reindex()允许你修改、增加、删除指定轴上的索引,并返回一个数据副本。df1 = df.reindex(index=dates[0:4], columns=list(df.columns)+['E'])df1.loc[dates[0]:dates[1],'E'] = 1df1''' A B C D F E20

2020-12-23 15:39:49 356

原创 pandas入门教程 (1)

pandas入门教程import pandas as pdimport numpy as npimport matplotlib.pyplot as plt#coding:utf8%matplotlib inline创建对象通过传递一个list来创建Series,pandas会默认创建整型索引:s = pd.Series([1,3,5,np.nan,6,8])s'''0 1.01 3.02 5.03 NaN4 6.05 8.0dtyp

2020-12-23 10:48:02 221

原创 Python pandas.DataFrame.idxmax函数方法的使用

idxmax函数方法的使用DataFrame.idxmax(self, axis=0, skipna=True) 返回在请求轴上第一次出现最大值的索引。不包括NA/null。参数说明axis{0或’index’,1或’columns’},默认0;skipnabool, default True。排除NA / null值。如果整个行/列是NA,结果将是NA。return沿指定轴的最大值索引。考虑一个包含阿根廷食品消费的数据集。df = pd.DataFr

2020-12-22 16:28:59 9908

原创 Pandas中resample方法详解

Pandas中resample方法详解Pandas中的resample,重新采样,是对原样本重新处理的一个方法,是一个对常规时间序列数据重新采样和频率转换的便捷的方法。重新取样时间序列数据。方便的时间序列的频率转换和重采样方法。对象必须具有类似datetime的索引(DatetimeIndex、PeriodIndex或TimedeltaIndex),或将类似datetime的值传递给on或level关键字。DataFrame.resample(rule, axis=0, closed=None, la

2020-12-22 15:48:19 30251 6

原创 pandas基础学习教程笔记 (2)

pandas基础学习数据的过滤(filter)选取数据框df中对应行的数值大于0.5的全部列df = pd.DataFrame(np.random.rand(10,5),columns=list('ABCDE'))df[df['A'] > 0.5]''' A B C D E0 0.534886 0.863546 0.236718 0.326766 0.4154602 0.953931 0.070198 0.4

2020-12-21 17:01:52 860

原创 pandas基础学习教程笔记 (1)

pandas基础学习库的导入函数说明df任意的pandas DataFrame(数据框)对象s任意的pandas Series(数组)对象pandas和numpy是用Python做数据分析最基础且最核心的库import pandas as pd # 导入pandas库并简写为pdimport numpy as np # 导入numpy库并简写为np数据的导入函数说明pd.read_csv(filename)导入csv格式文件中的数据

2020-12-21 15:48:59 1016

原创 Numpy学习 (3)

Numpy常用函数求取精度np.around([-0.6,1.2798,2.357,9.67,13], decimals=0)#取指定位置的精度'''array([-1., 1., 2., 10., 13.])'''看到没,负数进位取绝对值大的!np.around([1.2798,2.357,9.67,13], decimals=1)'''array([ 1.3, 2.4, 9.7, 13. ])'''np.around([1.2798,2.357,9.67,13], de

2020-12-21 14:40:06 114

原创 python中np.bincount()

python中np.bincount()x = np.array([1, 2, 3, 3, 0, 1, 4])np.bincount(x)'''array([1, 2, 1, 2, 1], dtype=int64)'''统计索引出现次数:索引0出现1次,1出现2次,2出现1次,3出现2次,4出现1次因此通过bincount计算出索引出现次数如下:bin的数量比x中最大数多1,例如x最大为4,那么bin数量为5(index从0到4),也就是bincount输出的一维数组为5个数,bincou

2020-12-21 14:19:49 1840

原创 Numpy学习(2)

Numpy基本知识1、基本运算import numpy as np# 仿照列表排序A = np.arange(14,2,-1).reshape((3,4)) # -1表示反向递减一个步长print(A)'''[[14 13 12 11] [10 9 8 7] [ 6 5 4 3]]'''print(np.sort(A))'''[[11 12 13 14] [ 7 8 9 10] [ 3 4 5 6]]'''# 矩阵转置print(np.transp

2020-12-21 11:22:38 161

原创 Python中的nonzero()函数

Python中的nonzero()函数numpy.nonzero(a)函数一般返回两行array(),第一个数组是非零元素的行索引,第二个数组是列索引,也就是一个2*N 的矩阵,其中N 表示的是矩阵a中不为0的元素个数。import numpy as npC = np.array([[0,5,9], [4,0,10]])print(np.nonzero(C))'''(array([0, 0, 1, 1], dtype=int64), array([1, 2, 0,

2020-12-21 10:28:39 1509

原创 Numpy笔记(1)

Numpy学习1、导入numpy库并简写为 npimport numpy as np2、打印numpy的版本和配置说明print(np.__version__)np.show_config()3、找到任何一个数组的内存大小Z = np.zeros((10,10))print("%d bytes" % (Z.size * Z.itemsize))4、从命令行得到numpy中add函数的说明文档numpy.info(numpy.add)5、创建一个值域范围从10到49的向量Z =

2020-12-19 14:35:31 3754 1

原创 python复制和拷贝

python复制和视图当运算和处理数组时,它们的数据有时被拷贝到新的数组有时不是。这有三种情况:完全不拷贝简单的赋值不拷贝数组对象或它们的数据。a = arange(12)b = a # no new object is createdb is a # a and b are two names for the same ndarray object'''True'''b.shape = 3,4 # changes the shape

2020-12-19 10:44:52 235 2

原创 Python模块re正则表达式 (2)

正则表达式模式模式字符串使用特殊的语法来表示一个正则表达式:字母和数字表示他们自身。一个正则表达式模式中的字母和数字匹配同样的字符串。多数字母和数字前加一个反斜杠时会拥有不同的含义。标点符号只有被转义时才匹配自身,否则它们表示特殊的含义。反斜杠本身需要使用反斜杠转义。由于正则表达式通常都包含反斜杠,所以你最好使用原始字符串来表示它们。模式元素(如 r’\t’,等价于 ‘\t’)匹配相应的特殊字符。表列出了正则表达式模式语法中的特殊元素。如果你使用模式的同时提供了可选的标志参数,某些模式元素的含

2020-12-18 15:43:18 157 1

原创 Python模块re正则表达式 (1)

Python模块(包)-re正则表达式re.match函数re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。函数语法:re.match(pattern, string, flags=0)函数参数说明:pattern:匹配的正则表达式string:要匹配的字符串。flags:标志位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等。匹配成功re.match方法返回一个匹配的对象,否则返回None。我们可以使用gro

2020-12-18 15:27:02 180

原创 Python内置函数

Python内置函数all() 函数属性说明描述all() 函数用于如果 iterable 的所有元素为真(或迭代器为空),返回 True,否则返回 False。元素除了是 0、空、None、False 外都算 True。语法以下是 all() 方法的语法:all(iterable)参数iterable – 元组或列表返回值如果iterable的所有元素不为0、’ '、False或者iterable为空,all(iterable)返回True,否则返回Fal

2020-12-18 14:35:12 333

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除