Python
乐无异kop
这个作者很懒,什么都没留下…
展开
-
pandas 使用apply同时处理两列数据(转载)
import numpy as np df = pd.DataFrame ({'a' : np.random.randn(6), 'b' : ['foo', 'bar'] * 3, 'c' : np.random.randn(6)}) def my_test(a, b): return a + b df['Value'] = df.apply(lambda row: my_test(row['a'], row['c']), axis=1转载 2020-06-13 14:28:12 · 2732 阅读 · 0 评论 -
电商行业场景化项目分析(下)——数据分析
根据 电商行业场景化项目分析(上)——数据清洗,我们已经将数据清理完成,接下来我们使用Python进行可视化分析。总体概览# 1、 销售GMVgmv = round(data['orderAmount'].sum()/10000, 2)# 2、 成交总和pay_sum = round(data['payment'].sum()/10000, 2)# 3、 实际成交额real_paysum = round(data[data['chargeback']=='否']['payment'].sum(原创 2020-05-24 17:54:38 · 804 阅读 · 0 评论 -
电商行业场景化项目分析(上)——数据清洗
本次分析的数据为某电商平台真实脱敏数据,数据格式如下:字段名字段说明Id行idorderID订单idUserID用户idgoodsID商品idorderAmount订单金额Payment支付金额ChanelIDKOL广告渠道idplatformType平台类型orderTime订单时间payTime支付时间chargeback是否退货加载数据加载处理数据需要的库import numpy as n原创 2020-05-24 17:20:05 · 919 阅读 · 0 评论 -
使用Python进行数据分析时——numpy、pandas的常用函数
科学计算库Numpy创建数组:numpy.array()numpy.arange()查看数组:dtypendim 维度shape 形状size 元素个数数组操作:tolist 转换列表reshape 修改形状array[start:stop:step] 切片(含左不含右)numpy.append 添加元素numpy.insert 插入元素numpy.delete 删除元素numpy.unique 数组去重numpy.concatenate() 数组连接nump原创 2020-05-22 13:08:35 · 568 阅读 · 0 评论 -
python试题
1、使用Python实现列表[1,3,5,5,3,7,9]去重思路:将列表转换成集合,就可以实现去重的功能。mylist = [1,3,5,5,3,7,9]myset = set(mylist)newlist = [i for i in myset]2、将[[11,12],[21,22],[31,32]]展开,得到列表[11, 12, 21, 22, 31, 32]思路:可以通过两种方式实现:(1)使用for循环遍历;(2)使用numpy中的flatten函数。#方法一list1 = [[原创 2020-05-22 08:49:13 · 224 阅读 · 0 评论 -
文本向量化——词袋模型、TF-IDF
对文本数据进行建模,有两个问题需要解决:模型进行的是数学运算,因此需要数值类型的数据,而文本不是数值类型数据。模型需要结构化数据,而文本是非结构化数据。将文本转换为数值特征向量的过程,称为文本向量化。将文本向量化,可以分为如下步骤:对文本分词,拆分成更容易处理的单词。将单词转换为数值类型,即使用合适的数值来表示每个单词。同样,需要注意的是,文本是非结构化数据,在向量化过程中,需...原创 2020-05-07 11:45:06 · 3174 阅读 · 0 评论 -
matplotlib画X轴时间的显示问题
很久没有在CSDN写博客了,非常地惭愧,在工作、学习上所遇到的难以越积越多,如果没有对问题进行有效的管理,不仅会使人心烦意乱不知所措,而且下次遇到同样的问题,又得四处找答案,浪费时间。废话又开始了。。。。。今天遇到的问题为,在jupyter notebook上用matplotlib画一组与时间有关的数据,结果X轴的时间显示出现了点问题,主要代码片如下:#画时间曲线的函数def plot_cu...转载 2020-05-06 22:29:58 · 1427 阅读 · 1 评论 -
线性回归——简单线性回归、多元线性回归
回归分析是用来评估变量之间关系的统计过程。用来解释自变量X与因变量Y的关系。即当自变量X发生改变时,因变量Y会如何发生改变。线性回归是回归分析的一种,评估的自变量X与因变量Y之间是一种线性关系。当只有一个自变量时,称为简单线性回归,当具有多个自变量时,称为多元线性回归。线性关系的理解:画出来的图像是直的。每个自变量的最高次项为1。拟合是指构建一种算法,使得该算法能够符合真实的数据。从...原创 2020-04-30 22:13:37 · 27614 阅读 · 4 评论 -
K-Means++算法与Mini Batch K-Mwans算法
K-Means++算法算法步骤K-Means算法对初始质心是敏感的,不同的初始质心,可能会导致不同的聚类效果(SSE)与收敛速度。虽然随机初始化多组质心,可以缓解这一问题,但是,这通常限于聚类数量(簇)较少的情况,如果聚类数量较多,随机初始化多组质心的方式可能就不会有效了。鉴于此,我们完全可以在选择初始质心上进行优化,这就是K-Means++算法。K-Means++与K-Means的区别在...原创 2020-04-28 19:46:13 · 567 阅读 · 0 评论 -
K-Means算法
K-Means算法算法步骤K-Means算法,即K均值算法,是最常见的一种聚类算法。顾名思义,该算法会将数据集分为K个簇,每个簇使用簇内所有样本的均值来表示,我们将该均值成为‘质心’。具体步骤如下:从样本中选择K个点作为初始质心计算每个样本到各个质心的距离,将样本划分到距离最近的质心所对应的簇中。计算每个簇内所有样本的均值,并使用该均值更新簇的质心。重复步骤2与3,直到达到以下条件之...原创 2020-04-28 09:18:38 · 1086 阅读 · 0 评论 -
三种常用的朴素贝叶斯实现算法——高斯朴素贝叶斯、伯努利朴素贝叶斯、多项式朴素贝叶斯
在sklearn中,提供了若干种朴素贝叶斯的实现算法,不同的朴素贝叶斯算法,主要是对P(xi|y)的分布假设不同,进而采用不同的参数估计方式。我们能够发现,朴素贝叶斯算法,主要就是计算P(xi|y),一旦P(xi|y)确定,最终属于每个类别的概率,自然也就迎刃而解了。常用的三种朴素贝叶斯为:高斯朴素贝叶斯伯努利朴素贝叶斯多项式朴素贝叶斯高斯朴素贝叶斯适用于连续变量,其假定各个特征x...原创 2020-04-24 11:44:38 · 9338 阅读 · 1 评论 -
sklearn模块pipeline类——流水线
当数据预处理的工作较多时,可能会涉及更多的步骤,此时分别执行每个步骤会显得过于繁琐。流水线(Pipeline类)可以将每个评估器视为一个步骤,然后将多个步骤作为一个整体而依次执行,这样,我们就无需分别执行每个步骤。流水线具有最后一个评估器的所有方法。当通过流水线对象调用方法£时,会执行这样的过程(假设流水线具有n个评估器):如果£是fit方法,则会首先对前n-1个评估器依次调用fit_tr...原创 2020-04-23 15:56:13 · 511 阅读 · 0 评论 -
KNN算法——基本原理、分类、回归
算法原理KNN算法的核心思维:相似度较高的样本,映射到n维空间后,其距离回避相似度较低的样本在距离上更加接近。KNN,即K近邻算法,K近邻就是K个最近的邻居,当需要预测一个未知样本的时候,就由与该样本最接近的K个邻居来决定。KNN既可以用于分类问题,也可以用于回归问题。当进行分类预测时,使用K个邻居中,类别数量最多(或加权最多)者,作为预测结果;当进行回归预测时,使用K个邻居的均值(或加权均值...原创 2020-04-23 15:33:53 · 14856 阅读 · 0 评论 -
分类模型评估——混淆矩阵、评估指标、ROC与AUC
混淆矩阵混淆矩阵,可以用来评估模型分类的正确性。该矩阵是一个方阵,矩阵的数值用来表示分类器预测的结果,包括真正例(True Positive),假正例(False Positive),真负例(True Negative),假负例(False Negative)。import numpy as npfrom sklearn.datasets import load_irisfrom skl...原创 2020-04-18 13:38:50 · 1505 阅读 · 0 评论