自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 pyspark对Mysql数据库进行读写

pyspark是Spark对Python的api接口,可以在Python环境中通过调用pyspark模块来操作spark,完成大数据框架下的数据分析与挖掘。其中,数据的读写是基础操作,pyspark的子模块pyspark.sql 可以完成大部分类型的数据读写。文本介绍在pyspark中读写Mysql数据库。1 软件版本在Python中使用Spark,需要安装配置Spark,这里跳过配置的过...

2020-04-27 20:04:46 14124 2

原创 R语言--粒子群优化算法PSO

粒子群优化算法(Particle Swarm Optimization,简称PSO)是通过模拟鸟群捕食行为设计的一种群智能算法。本文介绍算法原理,R代码实现以及R包实现。粒子群优化算法的基本思想:是通过群体中个体之间的协作和信息共享来寻找最优解。PSO的优势在于简单容易实现并且没有许多参数的调节,广泛应用于函数优化、神经网络训练等领域。算法原理介绍粒子群算法通过设计一种无质量的粒子来...

2020-03-01 17:12:29 14959 1

原创 python--pandas长宽数据转换

长型数据(long format dataframe)与宽型数据(wide format dataframe)是两种形式的数据框,在数据分析中高频出现,在数据处理过程中,常常需要在两者之间相互转换。本文基于pandas,介绍长型数据与宽型数据的相互转换操作。环境python3.9win10 64bitpandas==1.2.1宽转长在pandas中,宽型转长型数据有melt和wide_to_long两种方法。meltmelt方法叫做数据融合,是dataFrame拥有的方法,使用较为.

2021-04-20 17:36:43 7898 1

原创 python--pandas删除操作

删除是数据清洗中的高频操作,本文基于pandas,介绍其dataFrame的一些删除操作,包括了删除行,删除列,删除缺失值,删除重复值。环境python3.9win10 64bitpandas==1.2.1本文介绍的方法中,均有inplace参数,其默认值都为False,表示返回新数据框;设置为True表示替换原数据框,返回None删除行/列drop方法是pandas中删除行或列的方法。# 准备数据import pandas as pdpd.set_option('disp.

2021-04-12 17:26:33 4842 2

原创 python--pandas读取excel

对excel文件的读取是数据分析中常见的,在python中,pandas库的read_excel方法能够读取excel文件,包括xls和xlsx格式。本文介绍使用pandas读取excel以及读取过程中一些常见的问题。环境Excel文件的格式为xls和xlsx,pandas读取excel文件需要安装依赖库xlrd和openpyxl。!注意:当xlrd>=2.0时,只支持xls格式,不再支持xlsx。python3.9win10 64bitpandas==1.2.1xlrd==.

2021-04-06 18:04:54 11954

原创 R语言--map与reduce

map(映射)与reduce(规约)操作在数据处理中非常常见,R语言的核心是向量化操作,自带的apply系列函数完成了数据框的向量化计算,而purrr包中的map与reduce系列函数很好的拓展了向量化计算,使R语言处理数据更加优雅流畅。purrr包是tidyverse系列中的包,开发者是大名鼎鼎的Hadley Wickham。purrr包中的函数很多,使用最多的是map与reduce系列函数。安装包install.packages('purrr')mapmap表示映射,可以在一个或多个列表.

2021-04-01 17:27:16 7893

原创 python--pandas分组聚合

分组聚合是数据处理中常见的场景,在pandas中用groupby方法实现分组操作,用agg方法实现聚合操作。环境python3.9win10 64bitpandas==1.2.1groupby方法是pandas中的分组方法,对数据框采用groupby方法后,返回的是DataFrameGroupBy对象,一般分组操作后会进行聚合操作。分组import pandas as pdimport numpy as nppd.set_option('display.notebook_repr_.

2021-03-26 17:21:17 7538 2

原创 python--字符串string

python字符串是基本的数据类型,字符串类内置了多个方法,完成对字符串的不同操作。环境python3.9win10 64bit创建字符串的创建,可以通过python内置的类str,也可以使用英文的单引号'或双引号"。strstr类可以传入一个python对象,从而将其转换为字符串.# 整数转为字符串str(123)'123'在python3中,很多对象都自带了__str__()方法,直接调用就可以转为字符串对象。# 列表转为字符串[1,2,'a'].__str__(.

2021-03-26 09:39:59 7013 2

原创 python--元组tuple

元组tuple是python基本的数据结构,是不可变序列,允许有重复元素。环境win10 64bitpython 3.9创建元组的创建可以通过内置的tuple类创建,也可以用小括号()创建,元组中的元素可以是任意数据类型,可嵌套元组。元组与列表很相似,主要的区别是元组一旦创建,其元素不可更改。tuple通过tuple类创建元组实例,传入的参数必须是可迭代对象。常见的数据类型tuple,list,set,dict,str等都是可迭代对象。# 列表创建元组tuple([1,2,3]).

2021-03-26 09:39:24 6322 2

原创 python--集合set

集合set是python基本的数据结构,是可变序列,无序不重复。环境win10 64bitpython 3.9创建集合的创建可以通过内置的set类创建,也可以用大括号{}创建,集合中的元素必须是不可变数据类型,元素有重复值会自动去重。set通过set类创建集合实例,传入的参数必须是可迭代对象。常见的数据类型tuple,set,set,dict,str等都是可迭代对象。# 元组创建集合(自动去重)set((1,2,3,1))# 列表创建集合set([1,2,3])通过字典创.

2021-03-26 09:38:53 6704 1

原创 python--列表list

列表list是python基本的数据结构,是可变序列,允许有重复元素。环境win10 64bitpython 3.9创建列表的创建可以通过内置的list类创建,也可以用方括号[]创建,列表中的元素可以是任意数据类型,列表可嵌套列表。list通过list类创建列表实例,传入的参数必须是可迭代对象。常见的数据类型tuple,list,set,dict,str等都是可迭代对象。# 元组创建列表list((1,2,3))# 集合创建列表list({1,2,3})[1, 2, 3.

2021-03-26 09:38:16 6666 6

原创 python--pandas样式

pandas的DataFrame类拥有style属性,style属性返回Styler类,Styler类的applymap和apply等方法可以很方便的对表格样式做自定义调整。环境python3.9win10 64bitpandas==1.2.1快速了解先通过一个实例快速了解style的设置方法和效果。import pandas as pdimport numpy as np# 构造数据框np.random.seed(24)df = pd.DataFrame(np.random.

2021-03-26 09:37:16 7288 3

原创 Python--字符串格式化f-string

f-string是python3.6引入的新语法,用来替换传统的字符串格式化方法%和format。f-string更方便快捷。环境win10 64bitpython 3.9介绍f-string是python3.6开始引入的新语法,相比于之前的%和format方法,f-string方法能更快速直观的格式化字符串。f-string形式为:f[F]"{content:format}",其中,f或者F为标识符,表示字符串为f-string;content是替换并填入字符串的内容,可以是变.

2021-03-26 09:31:23 2024

原创 python--pandas切片

pandas的切片操作是python中数据框的基本操作,用来选择数据框的子集。环境python3.9win10 64bitpandas==1.2.1准备数据import pandas as pdplayer_list = [[1,'M.S.Dhoni', 36, 75, 5428000], [2,'A.B.D Villers', 38, 74, 3428000], [3,'V.Kholi', 31, 70, 8428000],.

2021-03-25 15:42:29 5225 1

原创 Python--发送邮件yagmail

yagmail模块是python中用来发送邮件的第三方模块,简单快速。环境python3.9win10 64bityagmail==0.14.245快速了解下面是一份代码样本,用来可以快速了解一下yagmail模块的使用。import yagmailtry: yag=yagmail.SMTP(user='[email protected]',password='authorization code',host='smtp.qq.com') yag.send(to='22222@.

2021-03-25 15:37:42 833

原创 pyspark--RDD基本操作

spark中的RDD是一个核心概念,RDD是一种弹性分布式数据集,spark计算操作都是基于RDD进行的,本文介绍RDD的基本操作。Spark 初始化Spark初始化主要是要创建一个SprakContext实例,该实例表示与spark集群的连接。可以通过多种方式创建。SparkContext直接使用SparkContext类创建一个spark上下文,主要参数是指定master和appName。from pyspark import SparkContextsc = SprakContext(.

2021-03-25 15:35:49 1558

原创 python--字典dict

字典dict是python中基础的数据类型,key-value键值对的形式表示。具有插入和查找速度快的特点。创建字典可以用关键字dict或者花括号{key:value}的形式创建。注意:key必须是唯一值,重复赋值会覆盖原有值key必须是不可变对象,可以是数字,字符,元组,但不能是列表value可以是任意的数据类型,字典可以嵌套# 花括号{}创建字典d0 = {'a': 1, 'b': 'abc', 'c': False}print(d0){'a': 1, 'b': 'abc',.

2021-03-25 15:34:37 567

原创 python--json格式处理

json是轻量级的数据交换格式(JavaScript Object Notation),在web应用中使用较为频繁,json格式与python内置对象的相互转换,是实现python处理json的第一步。使用内置的json模块即可完成json与python的相互转换。数据类型python的常见内置数据类型有dict,tuple等,而在json中,数据类型有object,array等,在相互转换中,类型是一一对应的。在下表中的python数据类型才可以被转为json,集合set、字节byte不能转为js.

2021-03-25 15:33:22 1018 1

原创 python--随机数

python中随机数的相关操作,可以使用自带的random模块或者是numpy模块。random 模块random模块是python自带的模块,包含了一些常用的简单的随机数生成方法。浮点数import random# 生成[0,1)之间的一个随机浮点数random.random()0.4357873596360974# 生成指定范围的一个随机浮点数random.uniform(1, 2)1.1537731999982404整数# 生成指定范围(闭区间)的一个随机整数ra.

2021-03-25 15:32:24 856 2

原创 Linux 中安装jupyter notebook

jupyter notebook是数据工作者常用的工具,具有优秀的交互式数据分析体验。在linux centos7服务器上搭建jupyter notebook服务,通过网页访问的形式使用,不仅能使用到服务器的计算资源,也能更方便进行数据分析。1 环境linux centos7python 3.72 安装jupyter所有操作在root权限下进行。安装jupyter之前,确保服务器中已安装好了python3。本服务器的python3的安装路径为usr/lib/python3.7/。安装ju.

2021-03-25 15:31:25 1961 1

原创 python--装饰器做参数检查

编写自定义python函数后,一般有一个参数检查过程,检查输入的参数是否是定义的类型,参数检查可以避免一些明显错误,也可以提高代码调试时的效率。本文用装饰器加注释表达式的方式,对函数做参数检查。1 装饰器在python中,常常看到@符号,后面的函数就是装饰器,比如在定义一个类的时候,会用到@property,作用是将一个方法转换为类的属性,也是一个装饰器。装饰器可以理解为对函数外加一个行为,这个行为是对你的项目代码是比较有意义的通用行为,常见的行为有打印日子,打印函数计算时长,也比如本次我们要做的参.

2021-03-25 15:29:10 2235

原创 window环境下安装spark

spark是大数据计算引擎,拥有Spark SQL、Spark Streaming、MLlib和GraphX四个模块。并且spark有R、python的调用接口,在R中可以用SparkR包操作spark,在python中可以使用pyspark模块操作spark。本文介绍spark在window环境下的安装。0 环境先给出安装好后的各个软件版本:win10 64bitjava 1.8.0scala 2.12.8hadoop 2.7.1spark 2.4.11 java安装下载spa.

2021-03-25 13:44:20 3241 2

原创 Linux 中安装python3

python的两大版本python2和python3,做数据分析,常用的是python3,用python3开发的程序部署到服务器上时,要求服务器上的python环境也是python3。现在Linux服务器一般自带python2。本文介绍Linux环境下安装python3以及一些需要注意点。1 依赖安装gcc是一个用于linux系统下编程的编译器,由于python3需要编译安装,因此,需要首先安装gcc。先查看一下系统中,是否安装了gcc。gcc --versions发现没有安装,则需要安装。.

2021-03-25 13:37:13 545 2

原创 R语言--邻近算法KNN

KNN(k邻近算法)是机器学习算法中常见的用于分类或回归的算法。它简单,训练数据快,对数据分布没有要求,使它成为机器学习中使用频率较高的算法,并且,在深度学习大行其道的今天,传统可解释的简单模型在工业大数据领域的应用更为广泛。本文介绍KNN算法的基本原理和用R代码实现。算法介绍KNN的核心思想可以用平常的俗语表示"物以类聚,人以群分",就是相似的东西很有可能具有相似的属性。k邻近法假设给定一个训练数据集,其中的数据标签已给。对于新的样本,找到与其k个最近邻的训练数据,这k个训练数据的多数属于某个类,.

2020-05-15 20:36:07 10912

原创 python对MySQL数据库进行读写

数据分析师需要经常从数据库中取数据进行分析,MySQL数据库是较为常用的关系型数据库,python是目前火热的数据分析语言,在python中,利用第三方库直接对数据库进行操作,包括数据的读取和写入等,能极大提高数据分析师的工作效率。本文介绍利用PyMySQL和SQLAlchemy两个python库对MySQL数据库进行读写操作。1 软件版本Win10 64bitPython 3.8P...

2020-05-01 11:50:18 10146

原创 R语言--操作MySQL数据库

用R语言做数据分析时,常常需要从多种数据源取数据,其中数据库是非常常见的数据源。用R操作MySQL数据库,可以说是数据分析师必备的技能了,本文介绍RMySQL包,可以在R语言中对数据库进行增删改查的操作。软件版本win10 64bitr3.6.1rstudio 1.2RMySQL 0.10.20安装包install.packages('RMySQL')创建连接用dbCo...

2020-04-29 20:47:19 9071

原创 Linux CentOS7中安装使用PyCharm

在Window上通过PyCharm开发的python程序,在部署到Linux服务器上时,经常需要做调试,如果用服务器自带的vim编辑代码,再进行调试,效率较低。PyCharm是优秀的python开发工具,安装在服务器上,能够提高python的调试效率。本文介绍PyCharm在Linux CentOS7服务器上的安装。下载去官网下载Linux版本的PyCharm,下载的是社区版本,专业版的...

2020-04-21 23:37:47 11960

原创 网页版R--RStudio Server

RStudio Server是网页版的RStudio,相比于单机版,它的灵活性更强,部署在服务器上后,可随时随地完成R语言的工作。并且能很方便的完成R项目的部署调试。本文介绍RStudio Server的安装和使用,以及一些需要注意的细节。介绍R语言的IDE一般用户都选用RStudio,用起来非常方便,但一般都是下载的单机版,对于在单机上做的项目,如果在其他机器上使用,又要重新安装一遍R...

2020-04-19 18:55:44 19427 2

原创 轻量级标记语言--markdown

markdown是一种轻量级的标记语言,常常被用来写博客,在R语言中,通过rmarkdown写分析报告也是非常方便的,markdown可以被转为html,pdf,word格式文档。本文介绍markdown的一些基本语法。标题用n个# title号表示,其中1<=n<=6,title为标题内容,注意空格。标题前必须空一行!例子:# 一级标题## 二级标题### 三级标题...

2020-04-09 12:09:14 9411

原创 R语言--不均衡问题处理

在机器学习分类任务中,常常会碰到样本不均衡问题,正确处理样本不均衡会提高模型的实用性和准确率,本文介绍不均衡问题以及用R语言解决。介绍样本不均衡问题是指在机器学习分类任务中,不同类型的样本占比差距悬殊。比如训练数据有100个样本,其中只有5个正样本,其余均为负样本,这样正样本:负样本=5%:95%,训练数据中负样本过多,会导致模型无法充分学习到正样本的信息,这时候模型的正确率往往较高,但...

2020-03-26 10:41:01 11503

原创 R语言--发送邮件(mailR包)

用R自动发送邮件,在某些工作场合是非常实用的,能极大提高工作效率。本文介绍用R实现自动发送邮件。在R语言中,用mailR包实现邮件的自动发送,用脚本发邮件,属于第三方邮件发送方式,需要有一个smtp服务器的支持。常见的邮箱,如qq,goole,163等都有smtp服务。开通smtp服务本文以网易的163邮箱为例,如下图,在设置中,找到smtp服务,服务器地址可以看到是smtp.163.c...

2020-03-19 17:37:28 10874

原创 R语言--字符处理(stringr包)

R语言支持字符处理,内置了系列函数(grep、gsub等),但系列函数定义混乱,对使用者极不方便。stringr包是专门用于字符处理的R包,函数定义简洁、使用方式统一,是使用率较高的R包。stringr包中的大部分函数具有统一风格的命名方式,以str_开头,正则表达式也完全适用该包。环境&r软件win10 64bitR 3.6.1安装包install.packages(...

2020-03-18 12:13:37 12723

原创 R语言--高效操作数据框(dplyr包)(3)

本文是R语言–高效操作数据框(dplyr包)系列的第三篇,主要介绍了数据框连接操作、数据框集合操作和数据框的分组计算等常见数据操作。数据框连接 joinjoin系列函数用来连接两个数据框。# 数据框df1 <- tibble(id=1:2,v1=c("a1","a2"))df2 <- tibble(id=2:4,v2=c("b1","b2","b3"))# 内连接i...

2020-03-14 22:22:53 9778

原创 R语言--高效操作数据框(dplyr包)(2)

本文是R语言–高效操作数据框(dplyr包)系列的第二篇,介绍了列重命名、行筛选、行排序、行去重、数据合并等常见操作。列重命名 renamerename用来给列重命名,对于复杂情况的重命名特别有效。其中,全部列重命名采用基础方法names实现。# 数据tbl_df <- tibble(var1=1:4,var2=2:5,label=c("a","b","a","c"))单个...

2020-03-11 10:42:52 9869 2

原创 R语言--高效操作数据框(dplyr包)(1)

数据框是R语言中的一个重要数据结构,在数据分析过程中,主要的数据对象就是数据框。R语言内置了data.frame类,dplyr包则加强了数据框的各种操作,语法与SQL类似,使数据框的处理变得灵活多变,处理速度得到很大提升。本文针对在数据分析中数据框使用的各种常用场景,总结了dplyr包的使用方法。本文为该系列的第一篇。环境&软件win10 64bitR 3.6.1安装包...

2020-03-08 17:59:25 10778

原创 R语言--百度ECharts接口(echarts4r包)

ECharts,是百度的一个开源的数据可视化工具,一个纯 Javascript 的图表库。echarts4r 包是 ECharts 的 R 语言接口,目前可以从 CRAN 是直接安装。echarts4r 语法结构简单,易用,可读性很好,是很好的交互式绘图包。本文介绍 echarts4r 的常规交互式图形,交互式图形可以用在 rmarkdown 和 shiny 应用中。环境&软件...

2020-02-05 13:41:09 11832 2

原创 R语言--ELM极限学习机(elmNNRcpp包)

极限学习机(Extreme Learning Machine) 具有学习效率高和泛化能力强的优点,被广泛应用于分类、回归、聚类、特征学习等问题中。本文利用elmNNRcpp包实现极限学习机的回归和分类算法。极限学习机(Extreme Learning Machine) 是一种单隐含层前馈神经网络(Single-hidden Layer Feedforward Neural Network)...

2020-01-22 12:47:25 11255

原创 R语言--向量化计算(apply族函数)

R语言最优秀的是它的向量化编程,这其中apply族函数扮演了非常重要的角色。apply族函数是由apply、sapply、lapply、mapply、tapply等函数组成的。熟练使用apply族函数,能够简化程序,提高代码的运算速度。软件&环境win10 64bitR 3.6.1applyapply是最基本的函数。为了方便演示,选取了R自带的数据框mtcars的前4行和前...

2020-01-17 17:40:30 9642

原创 Python--并行计算框架(pathos)

​应用python进行数据挖掘或计算时,往往需要遍历多种参数进行数据建模,而单次的建模或计算有时候非常耗时,这时候可以利用python的并行计算功能,加快计算速度。python能够应用并行计算的模块有多个multiprocessing、pathos等。其中multiprocessing模块应用的较多,但对于数据挖掘场景来说,pathos模块更实用,尤其允许输入多个可变参数非常简单实用。...

2020-01-13 09:30:19 14868 1

原创 R语言--并行计算(parallel、foreach包)

​R语言是单核计算语言,在数据建模或计算过程中,常常出现相同或相似任务的重复计算,一般操作是for循环处理或采用apply族函数处理,为了更快完成计算,采用并行计算是更优的选择。本文采用R语言中的parallel包与foreach包实现并行计算,并针对单变量并行和多变量并行计算这两个常用场景做了函数封装。0.环境&软件 win1064bit R3.6.1...

2020-01-06 22:26:09 11239

空空如也

空空如也

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

TA关注的人

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