# 在对数据进行分析时,主要细分为明确目标、应用思维和如下8个具体步骤:

1、读取数据

2、清洗数据

3、操作数据

4、转换数据

5、整理数据

6、分析数据

7、展现数据

8、总结报告

接下来将介绍使用python来具体处理数据,包括上面几个步骤的实现,以及给出具体的操作例子。

需要记住的是使用python处理数据所用到的 具体函数、方法。

#一、python读取数据

''''''

1、简要

2、如何从Excel文件中读取数据

3、如何从MySQL数据库中读取数据

4、如何从网页中读取数据

''''''

1、简要

读取数据时数据分析的第一步,相对来说比较简单,读取数据类型可以大致分为几类,一般用到的都是从 excel表、数据库、网页中进行读取。

我们使用python中的pandas库来实现读取操作。

2、如何从Excel文件中读取数据

Python代码如下:

读取数据之前需要导入pandas库

#导入pandas库

import pandas as pd

#导入Excel文件

df = pd.read_excel('文件名.xlsx')

3、如何从MySQL数据库中读取数据

读取数据之前需要安装pymysql模块

# 安装pymysql模块(在终端操作)

pip install pymysql

#安装后,读取操作代码如下:

import pandas as pd

import pymysql

# 创建数据库连接

conn = pymysql.connect(host='', user='', passwd='', database='')

# 创建游标

cursor = conn.cursor()

# 写SQL语句

sql = "select * from 表名"

#读取数据

df = pd.read_sql(sql,conn)

df.head()

# 关闭游标

cursor.close()

# 关闭连接

conn.close()

4、如何从网页中读取数据

访问网页时需要用到ssl模块,解决证书不受信任问题

import ssl

ssl._create_default_https_context = ssl._create_unverified_context

# 网址

url = 'http://s.askci.com/stock/a/?reportTime=2019-03-31&pageNum=1'

#读取网页中表格数据

dfs = pd.read_html(url)

#二、python清洗数据

'''

1、如何查找异常

2、如何排除重复

3、如何删除缺失

4、如何补全缺失

5、应用案例

'''

下面使用待清洗的扑克牌作为示例,来完成以上操作。

import numpy as np

import andas as pd

pd.set_option('max_rows',10)

df = df.read_excel("待清洗的扑克牌.xlsx")

df

返回结果如下:

1、如何查找异常

在清洗数据之前需要把异常的数据查找出来,观察异常数据特征,然后确定清洗方法。

一般查找数据异常方式:

查找某一列缺失

查找重复的行列

查找某一列的唯一值

#查找花色缺失的行

df[df.花色.isnull()]

# 查找完全重复的行

df[df.duplicated()]

# 查找某一列重复的行

df[df.编号.duplicated()]

#查找牌面所有唯一值

df.牌面.unique()

返回结果如下:

根据常识可以得出,'30'为异常值。

#查找牌面包含30的异常值

df[df.牌面.isin(['30'])]

2、如何排除重复

使用drop_duplicates()函数,在排除重复后会得到新的返回值。

#排除完全重复的行,默认保留第一行

df.drop_duplicates()

# 按照莫一列排除重复,默认保留第一行

df.drop_duplicates(['花色'])

# 按照莫一列排除重复,默认保留最后一行

df.drop_duplicates(['花色'],keep = 'last')

3、如何删除缺失

使用dropna()默认删除包含缺失的行

使用扑克牌中不重复的花色为例

color =  df.drop_duplicates(['花色'])

#删除花色缺失的行

color.dropna()

#删除整行全部为空的行,需要指定how参数

color.dropna(how='all')

#删除包含缺失值的列

color.dropna(axis = 1)

4、如何补全缺失

# 使用fillna()函数可以将缺失值填充成制定的值。

color.fillna('joker')

# 使用临近值填充需要指定method参数

#用后面的值填充

color.fillna(method= 'bfill')

# 按字典填充

# 先制定一个缺失值

color.loc[2,'牌面'] = np.nan

color

#按列自定义补全缺失值

color.fillna({'花色':0,'牌面':1})

5、应用案例

import numpy as np

import pandas as pd

# 设置最多显示10行

pd.set_option('max_rows',10)

#从Excel文件中读取原始数据

df = pd.read_excel('待清洗的扑克牌'.xlsx)

#补全缺失值

df = pd.fillna('joker')

#排除重复值

df = pd.drop_duplicates()

# 修改异常值

df.loc[4,'牌面'] = 3

# 增加一张缺少的牌

df = df.append({'编号':4,'花色':'黑桃♠','牌面':2},ignore_index = True)

#按编号排序

df = df.sort_values('编号')

# 重置索引

df = df.reset_index()

# 删除多余的列

df = df.drop(['index'],axis = 1)

#清洗好的数据保存到excel文件中

df.to_excel('清洗好的扑克牌'.xlsx,index = False)

df

上图为完整的扑克牌数据。

mysql 数据分析的步骤_数据分析8个主要步骤相关推荐

  1. 红外测试操作步骤_红外传感实验操作步骤及数据分析(无测试实图)

    红外传感实验操作步骤及数据分析(无测试实图) 1. 启动红外传感模块 红外传感模块工作实图 ( 1 ) 将 NEWlab 实验硬件平台通电并与电脑链接. ( 2 ) 将红外传感模块放置在 NEWlab ...

  2. python excel 数据分析统计服_数据分析从入门到进阶(透彻讲解EXCEL.SQL.TABLEAU、PYTHON四项数据分析必会工具.免费提供1GB数据集...

    透彻讲解Excel.SQL.Tableau.Python四项数据分析必会工具,数据分析工作者的案头推荐工具书.系统介绍数据分析的策略.方法(数据分析之道):实例讲解引导.快速掌握数据分析工具(数据分析 ...

  3. python数据分析心得体会_数据分析心得体会

    数据分析心得体会 在数据分析这门课程当中主要学习了 numpy 和 pandas 和数据挖掘的知识,学习过 程很充实,也不是很难. 首先学习了 Numpy, NumPy(Numerical Pytho ...

  4. 大数据标签获取处理步骤_大数据处理分为哪些步骤

    具体的大数据处理方法确实有很多,但是根据笔者长时间的实践,总结了一个普遍适用的大数据处理流程,并且这个流程应该能够对大家理顺大数据的处理有所帮助.大数据来源广泛,应用需求和数据类型都不尽相同,不过最基 ...

  5. wpf开源ui引用步骤_如何通过7个步骤开源您的学术作品

    wpf开源ui引用步骤 学术工作非常适合开源的精神:赠送的价值越高,您的学术声誉和收入就越大. 教授通过在同行评审文献中的期刊文章中免费分享自己的最佳思想来实现这一目标. 这是我们的货币,没有良好的发 ...

  6. spoon无法初始化至少一个步骤_通俗易懂:8大步骤图解注意力机制

    BERT.RoBERTa.ALBERT.SpanBERT.DistilBERT.SesameBERT.SemBERT.MobileBERT.TinyBERT和CamemBERT的共同点是什么? 答案并 ...

  7. mysql function select 赋值_数据分析面试之mysql的分组排序和变量赋值顺序

    学习过mysql的同学,大都体会过mysql的一个的痛点,那就是mysql没有支持分组排序的开窗函数.但是我们能够通过使用变量来达到这个目的. 我们先来创建一个人员年龄表(如下),有个这样的需求是,根 ...

  8. 织梦mysql安装教程视频教程_织梦DedeCMSV6系统安装步骤教程

    DedeCMSV6系统基于PHP7.*+MySQL开发,本篇文档将介绍如何下载DedeCMSV6系统,并且通过之前已经部署好的系统环境来安装配置一个安全的站点. 准备工作: 主机一台(PHP7.0以上 ...

  9. 泰坦尼克号python数据分析统计服_数据分析可视化——泰坦尼克号幸存者分析(上)...

    文章目录数据获取.结构分析如何获取seaborn提供数据源 特征列分析 缺失值与数据清洗年龄缺失值处理 填充embarked 删除不必要的列 幸存者分析分析性别对存活率的影响 分析年龄对存活率影响 分 ...

最新文章

  1. MarkDown需要掌握的几个基本语法
  2. python项目开发案例集锦 豆瓣-Python第三个项目:爬取豆瓣《哪吒之魔童降世》 短评...
  3. Java-Frame
  4. protobuf简单序列化反序列化示例
  5. 跟着鸟哥学Linux系列笔记1
  6. 文件流习题8.3 8.4
  7. NewCode----求数列的和
  8. Node.js「二」—— fs 模块 / async 与 await
  9. 华为云数据库TaurusDB性能挑战赛,50万奖金等你来拿!
  10. Python3智联招聘网爬虫学习
  11. 软件工程(2019)第四次作业
  12. 笔记:centos7的目录挂载,重要目录,/etc目录下重要文件
  13. C Primer Plus 第02章 C语言概述 学习笔记及复习题、编程题解答
  14. 南方电网两栖机器人_南方电网首个作业级水下机器人落户海南 为海底电缆“护驾”...
  15. ORA-01045: user ICCS lacks CREATE SESSION privilege; logon denied
  16. python把中文文档变为拼音
  17. 关于处理npm ERR! Unexpected token in JSON at position...
  18. html倒计时代码+微信可用,微信小程序动态显示项目倒计时效果
  19. A-level Computer Science 计算机科学学习笔记/经验分享/教学 (1):考试流程和大纲
  20. office 2016安装包下载

热门文章

  1. 《UNIXLinux程序设计教程》一2.1 UNIX 输入输出基本概念
  2. Java设计模式之七大结构型模式
  3. 网络配置 rpm yum
  4. 一个显示日期的工具类
  5. DPM 2012 SP1---安装并部署DPM 2012 SP1服务器
  6. 2007.2.14 日程安排
  7. 介绍一种Web上打印技术
  8. 针对数据科学家和数据工程师的4条SQL技巧
  9. react-redux图解_如何将React连接到Redux —图解指南
  10. react 文本框_React自动完成文本框