自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MySQL(一):数据库简介

一、数据库简介1.什么是数据库?存储数据的仓库2.数据库系统DBS:包含数据库、数据库管理系统、应用开发工具构成3.数据库管理系统DBMS:系统软件,是数据库系统的重要组成部分二、MySQL数据库特点:开放源代码、跨平台、开源免费、功能强大三、SQL简介1.定义:结构化查询语言,通过它来管理数据库中的数据2.组成:数据定义语言、数据操作语言、数据控制语言...

2021-08-30 19:56:58 197

原创 机器学习:SVM划分鸢尾花

from sklearn.datasets import load_irisfrom sklearn.model_selection import train_test_split, GridSearchCVfrom sklearn.svm import SVCfrom sklearn.preprocessing import StandardScaler# 1.下载数据li=load_iris()# 2.划分训练集和测试集:random_state=1表示每次划分的训练集和测试集是一样的

2021-08-26 12:31:31 293

原创 机器学习基础知识(五):模型的选择与调优

一、交叉验证目的:为了让被评估的模型更加准确可信做法:所有数据分成n份,其中一份作为验证集,其他作为训练集。经过n次的数据轮换测试,得到n组模型的结果,取平均值作为最终结果,称为n折交叉验证。意义:使所有数据既有当训练集的机会,也有当验证机的机会。最后将求出平均值模型结果。二、网格搜索目的:调整参数,也成为超参数调整超参数:需要手动指定的参数。但由于手动过程繁杂,所以需要对模型预设几种超参数组合。每组超参数都采用交叉验证来进行评估,最后选出最优参数组合建立模型。需要调整参数的模型有:k近邻等等

2021-08-25 20:37:48 377

原创 机器学习算法基础(三):k近邻算法

一、k近邻算法k近邻算法用于分类:通过计算样本点和判别点之间的欧式距离,查看距离最小的k个样本点的所属类别,得出判别点的所属类别。· k近邻法需要对特征值进行标准化API:sklearn.neighbors.KNeighborsClassifier(n_neighbors=5,algorithm=‘auto’)其中,n_neighbors为int类型的可选参数,默认为5,表示邻居数目;algorithm:{‘auto’,‘ball_tree’,‘kd_tree’,‘brute’},表示计算最近邻居的

2021-08-25 20:16:23 288

原创 机器学习算法基础(二):数据划分、转换器和估计器

鸢尾花数据:150个样本,每个样本5个字段,5个字段可以表示成x1,x2,x3,x4,y其中y表示鸢尾花的类别,有一个类别是和另外两个线性可分的,另外两类不可分。目标:区分出其中一个类别方式:使用主成分分析方法降维,画图,区分具体操作:将前四列取出,设为矩阵x,求x的转置与x的乘积的特征值对应的特征向量,如果前n个特征值的和大于所有特征值的和的95%,那么可以说前n个特征值已经提取出足够多的信息了。即使只有少数变量,但是可以通过两两乘积来升维,来做一个曲面的分类。训练集和测试集,如果训练集上分类

2021-08-25 19:59:42 171

原创 机器学习基础知识(九):逻辑回归

一、基本概念逻辑回归:将回归转化成为二分类,并能得出概率值应用场景:广告点击率、是否为垃圾邮件、是否是金融诈骗问题:如何将回归转换成为分类解答:使用sigmoid 函数,将输入的数据转化成为一个[0,1]之间的数值,即概率值具体体现在下图的逻辑回归公式图中。其中,z表示回归的结果,e=2.71,g(z)为sigmoid函数。由此可知,逻辑回归和线性回归一样,都是输入数据,拟合参数。不同点在于逻辑回归用sigmoid函数将z值转化成了一个[0,1]之间的数值,默认阈值为0.5,由此变成了二分

2021-08-19 22:21:49 483

原创 机器学习基础知识(八):模型的保存和加载

from sklearn.externals import joblib保存:joblib.dump(rf,‘test.pkl’) # rf表示的是所拟合模型的名称,将拟合的模型的各项参数保存到test.pkl文件中下载:estimator = joblib.load(‘test.pkl’) #下载模型的各项参数from sklearn.datasets import load_bostonfrom sklearn.linear_model import Ridgefrom sklearn.

2021-08-19 17:39:00 407

原创 机器学习基础知识(七):线性回归、岭回归

回归问题:目标值连续分类问题:目标值离散一、线性回归概念线性关系:二维直线关系、三维平面关系线性回归:y=kx+b。其中,k、x和b可以为多维向量,表示的是多维属性和权重的一种组合。目标:使用线性回归式进行预测重难点:求解矩阵k矩阵运算:np.dot(a,b)矩阵的发明是为了简便运算二、寻找最优模型(一)思路因为预测结果与真实值之间存在误差,所以算法需要不断迭代,找到误差平方和最小的模型。方法一:最小二乘法的正规方程通过寻找损失函数(误差平方和)的最小值,得到能使总损失最小的k。缺

2021-08-19 17:06:10 365

原创 机器学习算法基础(六):决策树、随机森林

一、决策树的基本认识决策树是一种分类方法,需要监督学习。即在已知样本属性和分类结果的情况下,通过利用if-then结构(画出分类节点),对样本的属性增加条件以进行样本分类。然后利用决策树进行样本的分类测试。可以看到画出决策树,关键点就是在于如何找出能够使分类错误率最小的分类节点?问题①:如何确定属性的先后顺序?如何不要过拟合?二、信息论基础(一)信息熵如果是在完全不知道属性的情况下,猜测32支球队,哪一支能是冠军?使用二分法进行猜测,最多猜5次一定能猜中冠军队。log2(32)=5,我们说信息熵等

2021-08-10 21:48:35 361

原创 机器学习基础知识:精确率和召回率

判定一个模型是好是坏,应该从多个角度去评判一般最常使用的是准确率,即预测结果正确的百分比,API为:estimator.score()其他标准:首先介绍混淆矩阵混淆矩阵引出其他指标精确率(查得准):预测结果为正例样本中真是为正例召回率...

2021-03-14 17:42:16 527

原创 机器学习基础知识(四):朴素贝叶斯

原理:从由因推果到由果推因,贝叶斯公式改进:由于属于某一个类别的可能性为0不妥,因此需要在分子加上拉普拉斯平滑系数α(一般为1),分母加上α*m(m为训练文档中统计出的所有特征词)API:sklearn.naive_bayes.MultinominalNB(alpha=1.0)...

2021-03-11 12:07:17 2424

原创 机器学习算法基础(一):特征工程

机器学习参考书(建议入门后再看)一、机器学习概述(一)什么是机器学习从数据中自动分析获得规律,并用规律进行预测(二)为什么需要机器学习解放生产力:将繁琐但是不那么重要的工作交给机器做解决专业问题:为专业人士提供辅助提供社会便利:例如城市大脑,可以进行信息的收集和资源的调配,减轻例如城市交通的压力...

2021-01-09 20:48:40 506

原创 matplotlib应用:球员能力图+股票k线图

文章目录一、球员能力图一、球员能力图#import matplotlib.pyplot as pltimport numpy as npplt.style.use('ggplot') #使用ggplot,画出来的图更美~#步骤一:创建四个对象ax1=plt.subplot(221,projection='polar')ax2=plt.subplot(222,projection='polar')ax3=plt.subplot(223,projection='polar')ax4=

2020-10-26 20:58:18 274

原创 numpy基础操作(三):完善maptplotlib画出的图

文章目录一、注释二、文字三、Tex公式四、区域填充五、形状六、图形的美化七、极坐标八、函数积分图(一)九、一、注释import matplotlib.pyplot as pltimport numpy as npx=np.arange(-10,11,1)y=x*xplt.plot(x,y)plt.annotate('this is the bottom',xy=(0,1),xytest=(-2,20),arrowprops=dict(facecolor='r',frac=0.2,headw

2020-10-25 17:26:30 540

原创 numpy基础操作(二):用matplotlib画图

文章目录一、散点图二、折线图一、散点图散点图用来表示两个变量间的关系height=[160,170,175,186]weight=[49,50,55,58]plt.scatter(heigth,weight) #将x和y的数据变成列表,然后填到plt.scatter(x,y)中plt.show()#股票价格波动open,close=np.loadtxt('0001.csv',delimiter=',',skiprows=1,usecols=(1,4),unpack=True)chan

2020-10-23 13:09:16 5354 3

原创 pandas基础操作(二):分组+聚合+数据io+时间序列

文章目录一、pandas索引二、分组计算三、聚合运算(一)内置聚合函数(二)自定义聚合函数一、pandas索引df=pd.DataFrame(np.random.randon(4,3),columns=['one','two','three'])df.index.name=row #将数组的行索引命名为rowdf.columns.name=col#判断是否有重复索引s=pd.Series(np.arange(5),index=list('abcda')) #创建重复索引s.index.i

2020-10-22 15:44:09 1290

原创 pandas基本操作(一):创建数组+数据整形+数据透视

import pandas as pdimport numpy as nys1=pd.Series([1,3,4,np.NaN,8,4]) #创建pandas的关键数据结构s2=pd.DataFrame(np.random.randon(6,4),index=dates,columnS=list('A','B','C'))s2.values #将会输出六行四列的一个随机数组d={}data.describe() #对数据进行最大值、最小值等基本的数据描述data.T #

2020-10-19 20:47:56 3946 2

原创 numpy基础操作(一):array的基础操作

把列表转换为numpy可以识别的数组:import numpy as nparray=np.array([[1,2,3],[2,3,4]])print(array)print('number of dim',array.ndim) #矩阵有几维print('shape:',array.shape) #矩阵行数和列数print('size:',array.size) #矩阵有几个元素 #----------矩阵的创建----------------arra

2020-10-14 19:26:55 862

原创 python入门知识(应用篇):表示时间+计算距离+海龟绘图

一、时间的表示计算机中的时间是从“1970年1月1日00:00:00”开始,以毫秒(1/1000秒)进行计时的。>>>import time>>>time.time()153168669.6236002 #返回的秒数精确到了微秒seconds = int(time.time()) #返回从unix时间点到现在的秒minutes = seconds//60hours = minutes//60days = hours//24二、计算坐标轴中起始点到终点的

2020-10-13 17:20:01 861

原创 python入门知识(十二):递归

文章目录一、递归函数一、递归函数含义:自己调用自己的函数要点:①必须要有终止条件:一般盈余返回值,不再调用自己;②递归步骤:把第n步和第n-1步相关联。注意:递归函数会创建大量的函数对象、过量的消耗内存和运算能力def test01(n): print("test01",n) if n==0: print("over") else: test01(n-1) #执行到此处时,python开辟一个新的test01空间,从头开始执行 print("test01***",n)

2020-10-13 17:19:28 199

原创 python入门知识(十一):导入包+使用包

文章目录一、模块化编程的流程二、import语句导入三、包package的使用一、模块化编程的流程将一个模块分成几个部分,分别设计功能二、import语句导入导入.py文件导入已被编译为共享库或DLL的C或C++拓展导入一组模块的包导入使用C编写并链接到python解释器的内置模块注1:导入模块的本质是在导入一个对象。如果重复导入,也不会多次加载,地址仍然不变。注2:import math,os #可以同时导入多个模块注3:如果是 from 模块名 import

2020-10-12 10:29:49 568

原创 python入门知识(十):file文件操作+os模块+shutil模块

文章目录一、file文件操作(一)文本文件和二进制文件(二)文件操作相关模块概述(三)创建文件对象open()(四)文本文件的写入1.基本的文件写入操作2.中文乱码问题(五)关闭流要点1.try异常管理2.with语句(上下文管理器)(六)文本文件的读取一、file文件操作(一)文本文件和二进制文件文本文件:存储的是“字符”文本,python默认为unicode字符集。二进制文件:将数据内容用“字节”进行存储,无法用记事本打开。(二)文件操作相关模块概述(三)创建文件对象open()

2020-10-11 21:22:10 702 1

原创 python入门知识(九):异常处理+程序调试

文章目录一、二、try...except(一)try...except基本结构(二)try...多个except结构(三)try...except...else结构(四)try...except...finally结构三、常见异常汇总和说明(一)return语句和异常处理问题(二)常见异常的解决1.SyntaxError:语法错误2.NameError:尝试访问一个没有申明的变量3.ZeroDivisionError:除数为0的错误4.ValueError:数值错误5.TypeError:类型错误6.Att

2020-10-09 13:45:17 583 2

原创 python入门知识(八):装饰器+面对对象的三个特征+组合+设计模式

文章目录一、方法的重载二、方法的动态性三、私有属性一、方法的重载python中没有方法的重载。在其他语言中,可以定义多个重名的方法,只要保证方法签名唯一即可。方法签名包含3个部分:方法名、参数数量、参数类型。而在python中,方法#python中没一个方法的重载。定义多个同名方法,只有最后一个有效class person: def say_hi(self): print("hello") def say_hi(self,name): print("{0},hello".forma

2020-10-08 12:37:44 902

原创 python入门知识(七):类

文章目录一、嵌套函数(一)使用情况(二)nonlocal关键字一、嵌套函数(一)使用情况封装-数据隐藏:外部无法访问“嵌套函数”;贯彻DRY(Don’t Repeat Yourself)原则:嵌套函数,可以让我们在函数内部避免重复代码闭包def printname(isChinese,name,familyname): def inner_print(a,b): print("{0} {1}".format(a,b)) if isChinese: inner_print(fami

2020-10-04 16:34:29 512

原创 python基础知识(六):函数+使用lambda、eval书写函数

文章目录一、函数(一)函数也是对象(二)变量的作用域(三)参数的传递(四)浅拷贝和深拷贝1.测试浅拷贝2.测试深拷贝3.不可变对象的子对象是可变对象,若修改可变对象,源对象也会发生改变(五)参数的类型1.位置参数2.默认值参数3.命名参数4.可变参数5.强制命名参数一、函数(一)函数也是对象def test(): print("hello")test() #调用函数c=testc() #将test的内容赋值给c,此时调用c()的结果和test()一样(二)变量的作用域局部变

2020-10-01 13:24:49 1127

原创 python基础知识(五):选择结构+循环结构+并行迭代+推导式创建序列

文章目录一、循环(一)for循环(二)嵌套循环(三)break、continue、else1.break语句2.continue语句3.else语句(四)循环代码优化二、zip()并行迭代三、推导式创建序列(一)列表推导式(二)字典推导式(三)集合推导式(四)生成器推导式(生成元组)四、绘制同心圆六、函数用法和底层分析(一)分类(二)核心要点1.语法:2.要点一、循环(一)for循环for 变量 in 可迭代对象: 循环体语句#例1:可迭代对象为元组for x in (20,30,40):

2020-09-29 22:56:55 731

原创 python入门知识(四):序列+列表+字典+元组+字典+集合

文章目录一、字典(一)字典的创建1.花括号{}2.dict()3.zip()4.fromkeys创建空字典一、字典字典里每个元素都是一个“键值对”,如a={“name”:“tony”,“age”=18}字典通过“键”来找“值”键:只能是整数、浮点数、字符串和元组(不可变),而不能是列表、字典等可变类型(一)字典的创建1.花括号{}>>>a={"name":"tony","age"=18}>>>a{"name":"tony","age"=18}2.

2020-09-28 23:32:38 1686

原创 python基础知识(三):字符串的相关操作+运算符的使用

文章目录一、可变字符串二、基本运算符一、可变字符串在python中,字符串属于不可变对象。一般情况下,修改字符串,需要新建一个字符串对象。如果想要原地修改字符串,可以使用io.stringIO()函数。>>>import io >>>s="hello, sxt">>>sio=io.stringIO(s) #sio为可变的字符串对象>>>sio.getvalue() #查看sio的值'hello, sxt'>&gt

2020-09-27 21:41:08 856

原创 python入门知识(二):数据类型

文章目录一、python基本语法(一)链式赋值(二)系列解包赋值(三)常量(四)基本内置数据类型(五)数据类型的转换(六)运算符的使用1.基本运算符的使用2.增强型赋值运算符的使用3.比较运算符的使用4.逻辑运算符![在这里插入图片描述](https://img-blog.csdnimg.cn/20200926110014244.png#pic_center)5.同一运算符(七)时间的表示二、计算坐标轴中起始点到终点的聚类一、python基本语法(一)链式赋值将同一个对象赋值给多个变量x=y=123

2020-09-26 23:35:15 213

原创 python入门知识(一):基础语法

文章目录一、python介绍(一)特点(二)应用范围二、 python的开发环境(一)交互环境(二)IDLE开发环境三、程序基本格式四、图形化设计一、python介绍python是一种解释型、面对对象语言面对对象是高级语言的普遍特点;解释型是相对编译型而言的概念,解释型语言会导致性能降低,运行速度减慢。(一)特点可读性强简洁,即不需要关注复杂语法面向对象免费和开源可移植性和跨平台丰富的库可拓展性(二)应用范围科学计算、人工智能、WEB服务端和大型网站后端、GUI开发(图形用

2020-09-25 16:00:18 236

空空如也

空空如也

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

TA关注的人

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