- 博客(35)
- 收藏
- 关注
原创 Mac上 anaconda安装TensorFlow
pip install tensorflow==1.14.0或者换镜像pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 模块名报错:During handling of the above exception, another exception occurred忽略问题,终端继续安装最后报错wrapt无法安装使用:pip install wrapt --ignore-installed...
2020-08-04 22:59:07
165
原创 Mac上anaconda安装xgboost
1.升级pippython -m pip install --upgrade pip2.直接使用装包工具pip install xgboost在python中安装xgboost安装后无法使用XGBoostError: XGBoost Library (libxgboost.dylib) could not be loaded.Likely causes: * OpenMP runtime is not installed (vcomp140.dll or libgomp-1.dll for W
2020-08-04 22:48:31
779
原创 支持向量机
支持向量机(SVM,也称为支持向量网络),是机器学习中获得关注最多的算法没有之一。SVM在各种实际问题中都表现非常优秀。它在手写识别数字和人脸识别中应用广泛,在文本和超文本的分类中举足轻重。SVM也被用来执行图像的分类,并用于图像分割系统。生物学和许多其他科学都是SVM的青睐者,SVM现在已经广泛被用于蛋白质分类,现代化合物分类的业界平均水平可以达到90%以上的准确率。支持向量机的原理寻找边际最宽的决策边界非线性SVM与核函数模型参数:from sklearn.svm import SVCk
2020-07-30 23:04:07
140
原创 kmeans
无监督学习与聚类算法KMeans算法就只在一堆点中找出相同或相似性质的点,所以叫聚类。方法是随机找质点点,然后聚集周边聚类最近的点,然后计算这些点的平均数作为新的质点,直到质点不在变换。KMeans追求的是,求解能够让簇内平方和最小化的质心。API:sklearn.cluster.KMeansclass sklearn.cluster.KMeans (n_clusters=8, init=’k-means++’, n_init=10, max_iter=300, tol=0.0001, precom
2020-07-29 23:58:14
260
原创 AUC ROC 混淆矩阵
分类模型的评价指标:1.准确率2.精准率3.召回率4.f1-Score5.auc曲线混淆矩阵混淆矩阵中有着Positive、Negative、True、False的概念,其意义如下:称预测类别为1的为Positive(阳性),预测类别为0的为Negative(阴性)。预测正确的为True(真),预测错误的为False(伪)。[公式][公式]TPRate的意义是所有真实类别为1的样本中,预测类别为1的比例。FPRate的意义是所有真实类别为0的样本中,预测类别为1的比例。分类模型
2020-07-28 16:46:16
335
原创 逻辑回归:
逻辑回归:要理解逻辑回归从何而来,得要先理解线性回归。然后只用使用sigmod函数对线型回归的返回值做处理。将线性回归方程z变换为g(z),并且将g(z)的值分布在(0,1)之间,且当g(z)接近0时样本的标签为类别0,当g(z)接近1时样本的标签为类别1,这样就得到了一个分类模型。形似几率:y(x)/1-y(x)y(x)逻辑回归的形似几率取对数的本质是线性回归z逻辑回归的形似几率取对数就是线性回归线性回归解的对数几率就是逻辑回归逻辑回归的优点首先必须要声明的一点就是逻辑回归是一个受工业商业
2020-07-27 23:59:09
232
原创 IV WOE 分箱 样本分布不均衡的解决方法
IV的概念和作用概念:IV的全称是Information Value,中文意思是信息价值,或者信息量。作用:我们构建分类模型时,经常需要对特征进行筛选。比如我们有200个候选特征,通常情况下,不会直接把200个特征直接放到模型中去进行训练,挑选特征的过程是个比较复杂的过程,需要考虑的因素很多,比如:特征的预测能力,特征之间的相关性,特征在业务上的可解释性等等。但是,其中最主要和最直接的衡量标准是特征的预测能力。我们需要一些具体的量化指标来衡量每自变量的预测能力。IV就是这样一种指标,他可以用来衡量
2020-07-27 23:58:47
1138
原创 朴素贝叶斯 二项式 伯努利
介绍:与高斯分布相反,多项式模型主要适用于离散特征的概率计算,且sklearn的多项式模型不接受输入负值。虽然sk-learn中的多项式模型也可以被用作在连续性特征概率计算中,但是我们如果想要处理连续性变量则最好选择使用高斯模型。注意:因为多项式不接受负值的输入,所以如果样本数据的特征为数值型数据的话,务必要进行归一化处理保证特征数据中无负值出现!!!多项式朴素贝叶斯APIfrom sklearn.naive_bayes import MultinomialNBMultinomialNB(alph
2020-07-25 16:37:30
797
原创 朴素贝叶斯 高斯分布
朴素贝叶斯的分类:在sk-learn中提供了三种不同类型的贝叶斯模型算法高斯模型多项式模型伯努利模型高斯模型APIfrom sklearn.naive_bayes import GaussianNB实例化模型对象的时候,我们不需要对高斯朴素贝叶斯类输入任何的参数,可以说是一个非常轻量级的类,操作非常容易。但过于简单也意味着贝叶斯没有太多的参数可以调整,因此贝叶斯算法的成长空间并不是太大,如果贝叶斯算法的效果不是太理想,我们一般都会考虑换模型。predict_proba(): 给出每一个测试
2020-07-23 23:31:27
1187
原创 线型回归2
import pandas as pdfrom sklearn.linear_model import LinearRegressionfrom sklearn.model_selection import train_test_splitdf = pd.read_excel('./datasets/house.xlsx')feature = dffeature = feature.drop(labels=['Y house price of unit area','No'],axis=1)ta
2020-07-23 23:28:23
98
原创 线性回归
回归问题的判定: 目标值是连续性的值,而分类问题的目标值是离散型的值。回归处理的问题为预测: 预测房价 销售额的预测 设定贷款额度 总结:上述案例中,可以根据事物的相关特征预测出对应的结果值官方解释:迭代是重复反馈过程的活动,其目的通常是为了逼近所需目标或结果。每一次对过程的重复称为一次“迭代”,而每一次迭代得到的结果会作为下一次迭代的初始值。通过【损失函数】来表示误差误差的大小线性回归方程中的系数w是有直系关联的L0,L1和L2范式: L0是指向量中非0的元素的个数。 L1是指向量中各个元素绝对
2020-07-22 23:52:19
691
原创 knn学习
import pandas as pdfrom sklearn.neighbors import KNeighborsClassifier 导入knn模型df = pd.read_excel('./datasets/my_films.xlsx') feature = df[['Action Lens','Love Lens']] 选择特征数据target = df['target'] 选择标签数据knn = KNeighborsClassifier(n_neighbors
2020-07-22 00:06:43
86
原创 machine leaning 1
什么是机器学习?机器学习就是从数据中自动分析获得规律,并利用规律对未知数据进行预测。什么是模型?特殊的对象。在对象内部已经被集成或者封装好了某种形式的方程式,只不过该方程还没有求出解。就是一堆数学逻辑。模型的作用?实现对未知数据的预测和分类。找规律!样本数据?特征数据:自变量。标签数据:因变量。样本数据和模型之间的关联?训练模型:将样本数据带入到模型,使得模型中的方程可以求出解。模型实现的预测或者分类其实就是模型中方程计算出来的结果。模型的分类:有监督学习如果模型需要的
2020-07-20 23:40:29
123
原创 综合项目
import pandas as pdimport numpy as npfrom pandas import Series,DataFrameimport matplotlib.pyplot as plt读取数据,column命名,多空格分离使用 \s+df_all = pd.read_csv(’./CDNOW_master.txt’,header=None,sep=’\s+’,names=[‘user_id’,‘order_dt’,‘order_product’,‘order_amount’]
2020-07-18 23:00:11
78
原创 用户购买商品行为分析
import numpy as npimport pandas as pdfrom pandas import DataFrame,Seriesimport matplotlib.pyplot as plt读取数据,命名columndf = pd.read_csv(’./UserBehavior.csv’,header=None,names=[‘user_id’,‘item_id’,‘category_id’,‘behavior_type’,‘time_stamp’])随机去100w条数据df
2020-07-18 22:39:55
424
原创 美国大选献金
美国大选献金需求加载数据查看数据的基本信息指定数据截取,将如下字段的数据进行提取,其他数据舍弃cand_nm :候选人姓名contbr_nm : 捐赠人姓名contbr_st :捐赠人所在州contbr_employer : 捐赠人所在公司contbr_occupation : 捐赠人职业contb_receipt_amt :捐赠数额(美元)contb_receipt_dt : 捐款的日期对新数据进行总览,查看是否存在缺失数据用统计学指标快速描述数值型属性的概要。空值处理。可能因
2020-07-15 23:36:08
170
原创 人口分析案例
人口分析案例abb = pd.read_csv(’./state-abbrevs.csv’) 读取数据pop = pd.read_csv(’./state-population.csv’)area = pd.read_csv(’./state-areas.csv’)abb_pop = pd.merge(left=abb,right=pop,left_on=‘abbreviation’,right_on=‘state/region’,how=‘outer’) 合并数据abb_pop.drop(l
2020-07-15 23:35:21
258
原创 matplotlib
matplotlib 画图相关线型图x = np.array([1,2,3,4,5])y = x + 2plt.plot(x,y)plt.plot(x,y)plt.xlabel(‘temp’)plt.ylabel(‘speed’)plt.title(‘temprature&speed’)plt.plot(x,y,label=‘aaa’)plt.plot(x+3,y-2,label=‘bbb’)plt.legend() 显示标签plt.figure(figsize=
2020-07-15 23:33:21
73
原创 pandas高级
pandas高级替换操作df.replace(to_replace=90,value=‘ten’) 替换单值df.replace(to_replace={8:‘eight’,33:‘three’}) 替换多值df.replace(to_replace={0:90},value=‘qqq’) 指定列替换 to_replace={列标签:替换值} value=‘value’映射操作通过map指定的关系给表增加一列map后加字典dic = {#映射关系表:表明了映射关系‘jay’:
2020-07-15 23:32:19
71
原创 股票收益计算
import pandas as pdimport numpy as npfrom pandas import DataFrame as dfimport matplotlib.pyplot as pltfrom pandas import Seriesdf1 = ts.get_k_data(code='000001',start='1900-1-01')df.to_csv('./pingan.csv')df1 = pd.read_csv('./pingan.csv')df1['date'
2020-07-15 00:16:53
218
原创 pandas处理数据
处理丢失数据None 数据类型为对象 不可计算np.nan(NaN) 数据类型为浮点,可以参加运算 np.NAN+1 还为空在pandas中如果遇到了None形式的空值则pandas会将其强转成NAN的形式。df.isnull() 返回所有元素的布尔值数据df.notnull() 返回所有元素的布尔值数据df.isnull().any(axis=1) 返回所有行是否有空的布尔值df.notnull().all(axis=1) 返回所有行是否非空的布尔值删除缺失值方法1.in
2020-07-15 00:04:41
144
原创 numpy&pandas%matplotlib
numpyimport matplotlib.pyplot as pltimport numpy as np1.创建矩阵np.array([1,2,3,4])np.array([[1,2,3,4],[1,2,2,2]])np.array([[[1,2,3],[4,5,6],[7,8,9]],[[1,2,3],[4,5,6],[7,8,9]],[[1,2,3],[4,5,6],[7,8,9]]])np.array([[1,2,3],[4,5,6.1]])np.ones(shape = (3,4
2020-07-14 00:31:16
113
原创 selenium相关
!pip install selenium基于浏览器自动化的一个模块selenium和爬虫之间的关联1.便捷去捕获动态加载的数据页面的可见即可得2.便捷的实现模拟登录selenium的基本使用pip install selenium事先准备好一个浏览器的驱动程序下载谷歌驱动:http://chromedriver.storage.googleapis.com/index.htmlselenium 基本操作from selenium import webdriverfrom time
2020-07-11 17:35:14
66
原创 requests模块相关
Anacondapython中基于数据分析+机器学习的一个集成环境jupyterAnaconda提供的一款基于浏览器的可视化编码工具1.requests模块概念:一个基于网络请求的模块,该模块可以模拟浏览器上网。环境安装:pip install requests***anaconda 中使用 !pip install requests编码流程:1.指定url2.发起请求3.获取响应数据4.持久化存储response.json()response.textimg_data =
2020-07-11 11:42:37
99
原创 ImportError cannot import name path
报错: from django.urls import pathImportError: cannot import name ‘path’如果urls.py源码是这样:from django.contrib import adminfrom django.urls import pathurlpatterns = [path(‘admin/’, admin.site.urls),]请改为这样:from django.contrib import adminfrom django.
2020-05-26 13:15:24
717
原创 python3 精简版 选课系统
为了练习面向对象的编程,重新写了一个超级简化版的选课系统,可以创建多个学校,多个课程,老师可以在不同的学校不同课程中讲课,学生可以选择不同的学校和课程。各种交互都实现了。 所有数据都是以字典的形式保存,一个大字典中有很多小字典。相当于一个数据库。 没有提供注册登录功能,需要的话可以加一个注册登录功能,注册登录的数据需要单独存放。import sysimport os...
2020-04-26 21:25:30
754
原创 套接字 相关
服务端import socketphone=socket.socket(socket.AF_INET,socket.SOCK_STREAM)phone.bind((‘127.0.0.1’,8080))phone.listen(5)while True:conn,addr=phone.accept()while True:try:msg=conn.recv(1024)if not...
2020-04-20 21:57:49
94
原创 真的没关联起来
1、练习上课作业讲解的面向对象代码,明天默写2、基于上课作业讲解的面向对象代码,扩写Student类3、加入序列化与反序列化操作4、对象之间的关联采用id号5、可以通过id找到对应的文件,然后从文件中反序列化出执行的学校、班级、课程、学生对象import pickleimport uuidclass School:def init(self, name, address):sel...
2020-04-09 23:28:41
99
原创 类 和 对象
class Teacher:def init(self,name,age,salary,level):self.name=nameself.age=ageself.salary=salaryself.level=leveldef stu_score(self,score):self.score=scoretea1=Teacher(‘egen’,18,20000,1)print(t...
2020-04-07 22:20:51
92
原创 常用模块json hushlib configparser
import sysimport osstate = 0name = Noneimport osBASE_PATH=os.path.dirname(file)print(BASE_PATH)import configparserconfig=configparser.ConfigParser()config.read(‘0331.ini’)print(config.sectio...
2020-03-31 23:50:56
110
原创 查看文件大小 打印进度条 生成随机码
import sysimport os查看文件大小res=sys.argv[1]print(os.path.getsize(res))生成随机码def make_code(size=6):res=’’for i in range(size):s1=chr(random.randint(65,90))s2=str(random.randint(0,9))res+=random....
2020-03-30 23:10:44
103
原创 匿名函数
1、文件内容如下, 标题为: 姓名, 性别, 年纪, 薪资egon male 18 3000alex male 38 30000wupeiqi female 28 20000yuanhao female 28 10000要求:从文件中取出每一条记录放入列表中,列表的每个元素都是{‘name’: ‘egon’, ‘sex’: ‘male’, ‘age’: 18, ‘salary’: ...
2020-03-26 23:57:05
77
原创 send方法 列表生成式 函数递归
send方法x=0def play(x):while True:y=yield xx+=1print(x)# y=int(y)print(y)i=play(x)next(i)next(i)next(i)next(i)i.send(10)i.send(15)sum()列表生成式res=[dict2.get(‘name’) for dict2 in l if dic...
2020-03-25 23:25:05
124
原创 装饰器 迭代器 生成器
无参装饰器import timedef new_lover(func):def decorator(*args,**kwargs):start=time.time()res=func(*args,**kwargs)stop=time.time()run_time=stop-startprint(run_time)return resreturn decorator@new_l...
2020-03-24 21:25:00
79
原创 第一篇python博客
太懒了,老男孩学习半个月第一次写博客,以后得坚持每天写一,字符串类型capitalize()将字符串的第一个字符转换为大写title()所有单词都是以大写开始,其余字母均为小写center(width, fillchar)返回一个指定的宽度 width 居中的字符串,fillchar 为填充的字符,默认为空格。count(str, beg= 0,end=len(string))返...
2020-03-15 23:19:22
113
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人