Python 数据分析练习1
环境
Anaconda3 Python 3.6, Window 64bit
- 目的
从MySQL数据库读取数据,进行数据清理,数据展示
- 代码
# -*- coding: utf-8 -*- import pymysql
import pandas as pd
import matplotlib.pylab as mtp
import numpy as np # 数据库连接
db_conn = pymysql.connect(
host="***",
user="kimbo",
passwd="***",
database="kimbo_test",
port=3306,
charset="utf8"
) # 执行sql语句
sql_cmd = "select id,order_id,valid_amt,coll_amt,product_type,one_dept from kimbo_test;" # 导入数据
data1 = pd.read_sql(sql_cmd, db_conn) # 数据清洗,发现缺失值
c = 0 data2 = data1.values # 转换成DateFrame模式
rows = len(data2) # 行数
cols = len(data2[0]) # 列数
# print(data2)
print(rows, cols) for i in range(rows):
for j in range(cols):
if (data2[i][j] == "NULL"):
data2[i][j] = None
if (data2[i][2] >= 1000):
data2[i][2] -= 100
c += 1
print("总共修改数值:%d" % c) data3 = data2.T # 行列转换
price = data3[2] # 价格
amt = data3[3] # 金额
pricemax = data3[2].max()
pricemin = data3[2].min()
amtmax = data3[3].max()
amtmin = data3[3].min() # 极差 最大值-最小值
pricediff = pricemax - pricemin
amtdiff = amtmax - amtmin
# 组距 极差/组数
pricedst = pricediff / 7
amtdst = amtdiff / 7
# 根据组距 切分
pricesty = np.arange(pricemin, pricemax, pricedst)
amtsty = np.arange(amtmin, amtmax, amtdst) # 散点图
mtp.subplot(2, 1, 1)
mtp.plot(price, amt, 'o')
mtp.title("ctp") # 画价格的直方图
mtp.subplot(2, 2, 3)
mtp.hist(data3[2], pricesty, color='y')
mtp.title("pri") # 画金额的直方图
mtp.subplot(2, 2, 4)
mtp.hist(data3[3], amtsty, color='b')
mtp.title("amt")
mtp.show()
- 结果展示

Python 数据分析练习1的更多相关文章
- [Python数据分析]新股破板买入,赚钱几率如何?
这是本人一直比较好奇的问题,网上没搜到,最近在看python数据分析,正好自己动手做一下试试.作者对于python是零基础,需要从头学起. 在写本文时,作者也没有完成这个小分析目标,边学边做吧. == ...
- 【Python数据分析】Python3多线程并发网络爬虫-以豆瓣图书Top250为例
基于上两篇文章的工作 [Python数据分析]Python3操作Excel-以豆瓣图书Top250为例 [Python数据分析]Python3操作Excel(二) 一些问题的解决与优化 已经正确地实现 ...
- 【Python数据分析】Python3操作Excel(二) 一些问题的解决与优化
继上一篇[Python数据分析]Python3操作Excel-以豆瓣图书Top250为例 对豆瓣图书Top250进行爬取以后,鉴于还有一些问题没有解决,所以进行了进一步的交流讨论,这期间得到了一只尼玛 ...
- 【搬砖】【Python数据分析】Pycharm中plot绘图不能显示出来
最近在看<Python数据分析>这本书,而自己写代码一直用的是Pycharm,在练习的时候就碰到了plot()绘图不能显示出来的问题.网上翻了一下找到知乎上一篇回答,试了一下好像不行,而且 ...
- Python 数据分析(二 本实验将学习利用 Python 数据聚合与分组运算,时间序列,金融与经济数据应用等相关知识
Python 数据分析(二) 本实验将学习利用 Python 数据聚合与分组运算,时间序列,金融与经济数据应用等相关知识 第1节 groupby 技术 第2节 数据聚合 第3节 分组级运算和转换 第4 ...
- Python数据分析(二): Numpy技巧 (1/4)
In [1]: import numpy numpy.__version__ Out[1]: '1.13.1' In [2]: import numpy as np
- Python数据分析(二): Numpy技巧 (2/4)
numpy.pandas.matplotlib(+seaborn)是python数据分析/机器学习的基本工具. numpy的内容特别丰富,我这里只能介绍一下比较常见的方法和属性. 昨天晚上发了第一 ...
- Python数据分析(二): Numpy技巧 (3/4)
numpy.pandas.matplotlib(+seaborn)是python数据分析/机器学习的基本工具. numpy的内容特别丰富,我这里只能介绍一下比较常见的方法和属性. 昨天晚上发了第一 ...
- Python数据分析(二): Numpy技巧 (4/4)
numpy.pandas.matplotlib(+seaborn)是python数据分析/机器学习的基本工具. numpy的内容特别丰富,我这里只能介绍一下比较常见的方法和属性. 第一部分: ht ...
- 【读书笔记与思考】《python数据分析与挖掘实战》-张良均
[读书笔记与思考]<python数据分析与挖掘实战>-张良均 最近看一些机器学习相关书籍,主要是为了拓宽视野.在阅读这本书前最吸引我的地方是实战篇,我通读全书后给我印象最深的还是实战篇.基 ...
随机推荐
- 跳出NSDate
感觉任何语言关于时间的格式化处理,时区的处理都是多的,最近被NSDate的各种问题坑了好久 先看看关于NSDate自己的问题 1.NSDate NSDate获取当前时间 NSDate *date=[N ...
- <2014 05 21> 互联网时代的C语言——Go
Go希望成为互联网时代的C语言. 多数系统级语言(包括Java和C#)的根本编程哲学来源于C++,将C++的面向对象进一步发扬光大.但是Go语言的设计者却有不同的看法,他们认为C++ 真的没啥好学的, ...
- sqlalchemy(二)高级用法 2
转自:https://www.cnblogs.com/coder2012/p/4746941.html 外键以及relationship 首先创建数据库,在这里一个user对应多个address,因此 ...
- Python位运算符
按位运算符是把数字看作二进制来进行计算的.Python中的按位运算法则如下: 下表中变量 a 为 60,b 为 13,二进制格式如下: a = 0011 1100 b = 0000 1101 ---- ...
- Github的markdwon如何使用表情符(Emoji)?表情包大全
如输入 :smile: 会输出
- Ubuntu 16.04 安装 JDK 及 Eclipse 详细步骤(转发:https://blog.csdn.net/bluish_white/article/details/56509446)
2017.3.1更新 修正了一些命令,现在按照文章步骤配置不会出现问题了. JDK 安装及配置 参考来源:http://www.linuxidc.com/Linux/2017-02/140908.ht ...
- 修改hostname不重启机器并生效
1.依次执行: vi /etc/sysconfig/network 这种修改方式不会马上生效,需要重启服务器后生效,所以继续执行下面命令 echo ***(例如:node13 ...
- Java NIO2 File API介绍
Introduction to the Java NIO2 File API GitHub NIO2中的文件API是Java 7附带的Java平台的主要新功能之一,特别是新的文件系统API的一个子集以 ...
- vue之 node.js 的简单介绍
一.什么是 node.js? 它是可以运行在JavaScript的服务平台 二.安装 1.node.js的特性 - 非阻塞IO模型 - 时间驱动 2.运用场景 - 高并发低业务 - 实时场景 - 聊天 ...
- 笔记-mysql 导出查询结果
语法: The SELECT ... INTO OUTFILE 'file_name' [options] form of SELECT writes the selected rows to a f ...