自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

GengPeng的博客

记录数据分析学习之路中的笔记和心得

  • 博客(38)
  • 收藏
  • 关注

原创 Python利用openpyxl来操作Excel(一)

最近一直在做项目里的自动化的工作,为了是从繁琐重复的劳动中挣脱出来,把精力用在数据分析上。自动化方面python是在好不过了,不过既然要提交报表,就不免要美观什么的。pandas虽然很强大,但是无法对Excel完全操作,现学vba有点来不及。于是就找到这个openpyxl包,用python来修改Excel,碍于水平有限,琢磨了两天,踩了不少坑,好在完成了自动化工作(以后起码多出来几个小时,美滋...

2018-12-01 00:48:59 8395 3

原创 使用pandas读取csv文件,列名开头出现\ufeff的处理

有时候用pandas的read_csv 打开文件的时候看不出什么异常,比如下图但是一旦使用列名处理数据的时候,就会出现列名错误,但是明明写的没有问题。例如如下所示那么这时候就要考虑是否有未显示的格式或者和字符,所以我们打印出列名可以看到有\ufeff的字符。通过记事本打开文件,发现文件格式是UTF-8 with BOM。来源百度百科:UTF-8:以字节为编码单元,它的字节顺序在所有系统中都是一様的,没有字节序的问题,也因此它实际上并不需要BOM(“ByteOrder Mark”)。但是U

2022-02-18 18:00:08 1280 2

原创 Python分组后求众数的方法

背景平均数,中位数和众数是常用的表示数据水平的统计指标。当我们想要对比不同分组的数据的差异的时候,一般来说会用到平均数,但是平均数容易受到极端值的影响,这时候中位数和众数就是一个比较好的选择。在pandas中,我们可以利用pivot_table函数和groupby函数来求分组统计量。但是这些他们都无法直接求出众数。所以就有了这边文章。方法很简单:方法df = pd.DataFrame({'a':['A','A','A','A','B','B','B','B','B'],'b':[1,1,2,3,1,

2020-10-13 12:41:42 4297

原创 广告效果聚类分析(KMeans)

前段时间做了一个项目,该客户是来自教育行业,其主要的宣传获客手段就是在各个渠道投放广告,用广告将用户引流至网站。但是广告的渠道非常多,哪些渠道效果很好,哪些效果不好。需要对广告效果分析针对性做广告效果测量和优化工作。我就想到之前学到的KMeans聚类分析广告的方法,在这里整理出来方法思路。供日后参考。import numpy as npimport pandas as pdfrom skl...

2019-05-05 18:50:47 5300 2

原创 R语言中的抽样方法与描述统计函数

抽样方法常见的抽样方法简单随机抽样分层抽样系统抽样# 导入数据# 1 金融 2 建筑 3 外语data <- read.csv("E:\\Github\\code-learning\\R\\data\\第11期资料\\data.csv")# 按照专业和ID排序data <- data[order(data$专业,data$ID),]head(data)...

2019-04-26 00:46:55 9868

原创 python数据可视化seaborn(四)—— 分类数据可视化

之前的文章关注的是两个变量都是数值变量的情况,当有一个变量是分类变量的时候,我们就需要其他类型的图形来展示分析数据。在seaborn中有多种类型的图形且非常易于上手。import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as sns%matplotlib inlinesns...

2019-04-09 18:46:39 8744

原创 python数据可视化seaborn(三)——探索变量之间的关系

python数据可视化seaborn(三)——探索变量之间的关系我们常常想知道变量之间是否存在关联,以及这些关联是否收到其他变量影响。可视化能够帮助我们非常直观的展示这些。import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as sns%matplotlib inline...

2019-03-22 10:15:40 9303 1

原创 一个Python计算时间的脚本(某月第一天最后一天/上周第一天最后一天等)

因为之前的自动化的工作中几乎每个脚本都要在时间节点运行,比如每周的第一天,每月第一天和最后一天等等。这就要涉及到时间的计算,但是没有现成的包,只能自己写一个(╯‵□′)╯︵┻━┻。用例这个脚本里包含了一般自动化报表会用到的时间节点。时间节点函数方法今天today昨天yesterday()上个月是几月last_month()上月第一天last_m...

2019-03-12 20:31:04 996

原创 python数据可视化seaborn(二)—— 分布数据可视化

这篇文章是Python可视化seaborn系列的第二篇文章,本文将详解seaborn如何探索数据的分布。import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as sns% matplotlib inlinesns.set(context='notebook',font='...

2018-12-27 19:20:29 8919 1

原创 python数据可视化seaborn(一)—— 整体样式与调色板

很久之前对seaborn有过一些涉及但是没有深入探究,这次有趁着有数据可视化的需求,就好好学一学Seaborn其实是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,在大多数情况下使用seaborn就能做出很具有吸引力的图,为数据分析提供了很大的便利性。但是应该把Seaborn视为matplotlib的补充,而不是替代物。这次就从最基本的图标风格和调色板开始,学习s...

2018-12-19 09:21:47 14411

原创 python判断孪生质数对(素数对)并计算个数。

很久前在知乎写的一个答案,今天把坑填了,顺便搬过来。让我们定义dn为:dn=pn+1−pn,其中pi是第i个素数。显然有d1=1,且对于n&amp;gt;1有dn是偶&amp;gt;&amp;gt;数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。 现给定任意正整数N(&amp;lt;10^5), 请计算不超过N的满足猜想的素数对的个数。而且题目还限制了400ms时间(有没有搞错(╯‵□′)╯︵┻━┻)写出...

2018-12-13 23:22:06 10324 10

原创 统计分析——描述统计之数据水平描述

一组样本数据的数值特征一般来说可以从三个方面来描述:数据的水平(也可以称之为集中趋势或位置度量),反映数据的数值大小数据的差异,反映数据间的离散程度数据的分布形状,反映数据分布的偏度和峰度描述水平的统计量数据水平是指数值大小,描述数据水平的统计量有平均数,分位数,众数,同时这几个统计量也可以用来描述数据的集中趋势度。平均数**简单平均数(simple mean)**的...

2018-11-26 21:02:16 4985

原创 R可视化之图形控制和布局基础

R语言的图形参数主要由par()函数控制,图形布局主要由layout()函数控制图形参数我们以如下数据为例剂量(dose)对药物A的响应(drugA)对药物B的响应(drugB)201615302018402725454031606040dose &lt;- c(20, 30, 40, 45, 60)drugA &l...

2018-09-25 20:12:17 3541

原创 R语言的基础语法及常用命令

R其实对于数据分析来说只是工具而已,所以刚开始不需要学习多么深多么细,只需要能够满足当前需求就行,之后的在实践中慢慢学习。毕竟想要把R学精并不是容易的事情。正确的做法就是边做边学,不会就google翻文档。本片主要是R的基础语法及常用的命令操作赋值R赋值采用&amp;lt;-或者-&amp;gt;或者=,建议采用标准的第一个。由于R中内置了同名函数c(),最好不要在编码时使用c作为对象名,否则可能产生一...

2018-09-19 23:09:48 15674

原创 R语言的数据结构

R共有6种储存数据的对象类型向量列表数组数据框矩阵因子向量(Vectors)向量是用于存储数值型、字符型或逻辑型数据的一维数组。执行组合功能的函数c()可用来创建向量。# 创建一个向量apple &amp;lt;- c('red','green',&quot;yellow&quot;)num &amp;lt;- c(12, 23, 34, 56, 78, 83)print(apple)print(nu...

2018-09-19 23:03:29 4200

原创 在jupyter notebook中使用R语言

最近学习R语言,因为之前一直用jupyter notebook写python,于是就也想这样写R,但是网上很少有写如何将R和jupyter notebook关联的教程。我在翻了文档后发现很简单,三行代码就搞定了。

2018-09-17 15:52:14 50432 24

原创 数据预处理——归一化标准化

数据的标准化(normalization)是将数据按比例缩放,使之落入一个小的特定区间。 去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的指标能够进行比较和加权最典型的就是数据的归一化处理,即将数据统一映射到[0,1]区间上import numpy as npimport pandas as pdimport matplotlib.pyplot as...

2018-05-08 17:38:33 7484 1

原创 数据特征分析技能—— 相关性检验

数据特征分析技能—— 相关性检验 相关性分析是指对两个或多个具备相关性的变量元素进行分析,从而衡量两个变量因素的相关密切程度 一般常用四种方法: - 画图判断 - pearson(皮尔逊)相关系数 - sperman(斯皮尔曼)相关系数 - Cosine similarity (余弦相关系数)import numpy as np...

2018-05-06 22:41:51 17112

原创 kaggle竞赛:泰坦尼克幸存者预测

kaggle竞赛:泰坦尼克幸存者预测——(一)import pandas as pdimport numpy as npimport matplotlib.pyplot as pltimport seaborn as snsimport osimport warningswarnings.filterwarnings('ignore')%matplotlib inline...

2018-05-03 18:13:07 4262 2

原创 数据特征分析技能—— 帕累托分析

数据特征分析技能—— 帕累托分析 又称ABC分类库存控制法,主次因分析法,20/80定律等。 - 一般来说投入产出,努力和报酬之间并不是绝对的线性关系,总有一些关键因素起着至关重要的作用,而帕累托分析就是找到影响事务的关键因素,分清主次。 import numpy as npimport pandas as pdimport matplotlib.pyplot a...

2018-05-03 11:18:34 3045

原创 数据特征分析技能—— 统计分析

数据特征分析技能——统计分析 统计指标对定量数据进行统计描述,常从集中趋势和离中趋势两个方面进行分析import numpy as npimport pandas as pdimport matplotlib.pyplot as plt% matplotlib inline集中趋势度量 指一组数据向某一中心靠拢的倾向,核心在于寻找数据的代表值或中心值 ...

2018-05-03 10:53:57 4371

原创 数据特征分析技能—— 分布分析

数据特征分析技能—— 分布分析 分布分析法又称直方图法。它是将搜集到的质量数据进行分组整理,绘制成频数分布直方图,用以描述质量分布状态的一种分析方法import numpy as npimport pandas as pdimport matplotlib.pyplot as plt%matplotlib inlinedata = pd.read_csv(...

2018-04-26 21:06:33 6349 5

原创 Python数据可视化matplotlib(三)——绘制基本的图表

Python数据可视化matplotlib(三)——绘制基本的图表import numpy as npimport pandas as pdimport matplotlib.pyplot as plt% matplotlib inlineimport matplotlib.style as pslpsl.use('_classic_test')基本图表绘制 plt.pl...

2018-04-24 20:06:13 29611 1

转载 统计参数 SSE,MSE,RMSE,R-square 详解

原文章地址:http://blog.sina.com.cn/s/blog_628033fa0100kjjy.html在学习线性回归的过程中,遇到下面几个名词:SSE(和方差、误差平方和):The sum of squares dueto errorMSE(均方差、方差):Meansquared errorRMSE(均方根、标准差):Root mean squared errorR-square(确...

2018-04-24 17:15:05 65889 3

原创 Python数据可视化matplotlib(二)—— 子图功能

Python数据可视化matplotlib(二)—— 子图功能 在matplotlib中,整个图像为一个Figure对象,在Figure对象中可以包含一个或者多个Axes对象,每个Axes(ax)对象都是一个拥有自己坐标系统的绘图区域import pandas as pdimport numpy as npimport matplotlib.pyplot as plt ...

2018-04-01 17:44:56 25259

原创 Python数据可视化matplotlib(一)—— 图表的基本元素

Python数据可视化matplotlib(一)—— 图表的基本元素图表创建plt.show()# 图表窗口1 → plt.show()plt.plot(np.random.rand(10))plt.show()# 直接生成图表魔法函数% matplotlib inline 嵌入图表# 图表窗口2 → 魔法函数,嵌入图表%matplotli...

2018-03-31 23:42:04 4548

原创 Pyhton科学计算工具Pandas(十)—— 透视表和交叉表

Pyhton科学计算工具Pandas(十)—— 透视表和交叉表.ipynb透视表# 透视表:pivot_table# pd.pivot_table(data, values=None, index=None, columns=None, aggfunc='mean', fill_value=None, margins=False, dropna=True, margins_name=...

2018-03-29 01:29:53 2490

原创 Pyhton科学计算工具Pandas(九)—— 数据分组

Pyhton科学计算工具Pandas(九)—— 数据分组 分组统计 - groupby功能 根据某些条件将数据拆分成组 对每个组独立应用函数 将结果合并到一个数据结构中 Dataframe在行(axis=0)或列(axis=1)上进行分组,将一个函数应用到各个分组并产生一个新值,然后函数执行结果被合并到最终的结果对象中。 df.groupby(by=None...

2018-03-29 00:42:41 685

原创 Pyhton科学计算工具Pandas(八)—— 数据的去重及替换

Pyhton科学计算工具Pandas(七)—— 数据的去重及替换去重 .duplicated()# 去重 .duplicated()s = pd.Series([1,1,1,1,2,2,2,3,4,5,5,5,5])print(s.duplicated(keep='first'))print(s[s.duplicated() == False])print('-----')...

2018-03-28 20:51:58 3389

原创 Pyhton科学计算工具Pandas(七)—— 数据的合并,连接与修补

Pyhton科学计算工具Pandas(七)—— 数据的合并,连接与修补合并 .merge()和.join().merge() Pandas具有全功能的,高性能内存中连接操作,与SQL等关系数据库非常相似 pd.merge(left, right, how=’inner’, on=None, left_on=None, right_on=None, ...

2018-03-28 20:21:01 525

原创 Pyhton科学计算工具Pandas(六)—— 文本数据处理

Pyhton科学计算工具Pandas(六)—— 文本数据处理Pandas针对字符串配备的一套方法,使其易于对数组的每个元素进行操作字符串的常用方法字符计数,自动排除丢失/NA值# 通过str访问,且自动排除丢失/ NA值s = pd.Series(['A','b','C','bbhello','123',np.nan,'hj'])df = pd.DataFrame...

2018-03-26 23:08:19 470

原创 Pyhton科学计算工具Pandas(五)—— 常用的数值计算和统计方法

Pyhton科学计算工具Pandas(五)—— 常用的数值计算和统计方法基本参数axis,skipna# 基本参数:axis、skipnadf = pd.DataFrame({'key1':[4,5,3,np.nan,2], 'key2':[1,2,np.nan,4,5], 'key3':[1,2,3,'...

2018-03-23 23:22:31 1815

原创 Pyhton——时间模块详解

Pyhton——时间模块详解 Python中提供了多个用于对日期和时间进行操作的内置模块:time模块、datetime模块和calendar模块。其中time模块是通过调用C库实现的,所以有些方法在某些平台上可能无法调用,但是其提供的大部分接口与C标准库time.h基本一致。time模块相比,datetime模块提供的接口更直观、易用,功能也更加强大。我们先看关于表示时间的几种方法...

2018-03-14 23:12:51 387

原创 Pyhton科学计算工具Pandas(三) —— 数据结构Dataframe的基本操作

Pyhton科学计算工具Pandas(三) —— 数据结构Dataframe的基本操作dataframe的基本操作查看和转置# 数据的转置和查看df = pd.DataFrame(np.random.rand(16).reshape(8,2)*100, columns=['a','b'])print(df.head(3)) ...

2018-03-12 23:55:40 426

原创 Pyhton科学计算工具Pandas(二) —— Dataframe数据结构

Pandas(二) —— Dataframe数据结构Dataframe数据结构Dataframe的基本概念import numpy as npimport pandas as pd#Dataframe的基本概念'''是一个表格型的数据结构,包含一组有序的列,其列的值类型可以是数值、字符串、布尔值等。Dataframe中的数据以一个或多个二维块存放,不是列表、字...

2018-03-12 00:23:20 631

原创 Pyhton科学计算工具pandas(一)—— Series 数据结构

Pandas(一) —— 数据结构Series Python Data Analysis Library 或 pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。 pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而...

2018-03-10 00:19:41 423

原创 Pyhton科学计算工具Numpy(二)之数组索引切片,numpy随机数及文件生成读取

科学计算工具Numpy(二)之数组索引切片,numpy随机数及文件生成读取 一个用python实现的科学计算包。包括:  1.一个强大的N维数组对象Array;   2、比较成熟的(广播)函数库;  3、用于整合C/C++和Fortran代码的工具包;  4、实用的线性代数、傅里叶变换和随机数生成函数。numpy和稀疏矩阵运算包scipy配合使用更加方便。 ...

2018-03-04 23:49:32 738

原创 Pyhton科学计算工具Numpy(一) 之数组

科学计算工具Numpy(一) 之数组 一个用python实现的科学计算包。包括:  1.一个强大的N维数组对象Array;   2、比较成熟的(广播)函数库;  3、用于整合C/C++和Fortran代码的工具包;  4、实用的线性代数、傅里叶变换和随机数生成函数。numpy和稀疏矩阵运算包scipy配合使用更加方便。                  ...

2018-03-04 23:31:48 565

空空如也

空空如也

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

TA关注的人

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