Python数据处理常用工具(pandas)
数据清洗的常用工具--Pandas
- 现实中,数据并非完美的,需要进行清洗才能进行后面的数据分析
- 数据清洗是整个数据分析项目中最消耗时间的一步
- 数据的质量最终决定了数据分析的准确性
- 数据清洗是唯一可以提高数据质量的方法,使得数据分析结果也变得更可靠
数据清洗的常用工具
- 目前在Python中,numpy和pandas是最主流的工具
- Numpy中的向量化运算使得数据处理变得高效
- Pandas提供了大量数据清洗的高效方法
- 在Python中,尽可能多的使用numpy和pandas中的函数,提高数据清洗的效率
Pandas常用数据结构series和方法
- 通过pandas.Series来创建Series数据结构
- pandas.Series(data,index,dtype,name)
上述参数:data可以为列表,array/dict
上述参数:index表示索引,必须与数据同长度,name表示对象名称
import pandas as pd
import numpy as np series1 = pd.Series([2.8, 3.01, 8.99, 8.59, 5.18])
series2 = pd.Series([2.8, 3.01, 8.99, 8.59, 5.18], index=['a', 'b', 'c', 'd', 'e'], name='这是一个series')
series3 = pd.Series(np.array((2.8, 3.10, 8.99, 8.59, 5.18)), index=['a', 'b', 'c', 'd', 'e'])
series4 = pd.Series({'北京': 2.8, '上海': 3.01, '广东': 8.99, '江苏': 8.59, '浙江': 5.18}) print(series1)
"""
0 2.80
1 3.01
2 8.99
3 8.59
4 5.18
dtype: float64
""" print(series2)
"""
a 2.80
b 3.01
c 8.99
d 8.59
e 5.18
Name: 这是一个series, dtype: float64
"""
print(series3)
"""
a 2.80
b 3.10
c 8.99
d 8.59
e 5.18
dtype: float64
""" print(series4)
"""
北京 2.80
上海 3.01
广东 8.99
江苏 8.59
浙江 5.18
dtype: float64
"""
Pandas常用数据结构dataframe和方法
通过pandas.DataFrame来创建DataFrame数据结构
Pandas.DataFrame(data,index,dtype,columns)
上述参数:data可以作为 array/dict
上述参数:index为 行 索引,columns代表列名或者列标签
import pandas as pd
import numpy as np list1 = [['张三', 23, '男'], ['李四', 27, '女'], ['王二', 26, '女']] # 使用嵌套列表
df1 = pd.DataFrame(list1, columns=['姓名', '年龄', '性别'])
df2 = pd.DataFrame({'姓名': ['张三', '李四', '王二'], '年龄': [23, 27, 26], '性别': ['男', '女', '女']})
array1 = np.array([['张三', 23, '男'], ['李四', 27, '女'], ['王二', 26, '女']]) # 使用numpy
df3 = pd.DataFrame(array1, columns=['姓名', '年龄', '性别'], index=['a', 'b', 'c']) print(df1)
"""
姓名 年龄 性别
0 张三 23 男
1 李四 27 女
2 王二 26 女
""" print(df2)
"""
姓名 年龄 性别
0 张三 23 男
1 李四 27 女
2 王二 26 女
""" print(array1)
"""
[['张三' '23' '男']
['李四' '27' '女']
['王二' '26' '女']]
""" print(df3)
"""
姓名 年龄 性别
a 张三 23 男
b 李四 27 女
c 王二 26 女
"""
常用方法
- series和dataframe常用方法
| 方法名称 | 说明 |
|---|---|
| values | 返回对象所有元素的值 |
| index | 返回行索引 |
| dtypes | 返回索引 |
| shape | 返回对象数据形状 |
| ndim | 返回对象的维度 |
| size | 返回对象的个数 |
| columns | 返回列标签(只对dataframe数据结构) |
pyinstaller -F -w demo.py --noconsole
Python数据处理常用工具(pandas)的更多相关文章
- 学习笔记:Python序列化常用工具及性能对比
什么叫序列化?简单来讲就是将内存中的变量数据转而存储到磁盘上或是通过网络传输到远程. 反序列化是指:把变量数据从序列化的对象重新读到内存里. 下面我们一起来看看,python里面序列化常用的json. ...
- Python第三方常用工具、库、框架等
Python ImagingLibrary(PIL):它提供强大的图形处理的能力,并提供广泛的图形文件格式支持,该库能进行图形格式的转换.打印和显示.还能进行一些图形效果的处理,如图形的放大.缩小和旋 ...
- python数据处理----常用数据文件的处理
数据处理时,常用数据存储形式主要有:CSV.JSON.XML.EXCEL.数据库存储. 一.CSV文件 csv文件简介 CSV是一种通用的.相对简单的文件格式,被用户.商业和科学广泛应用.最广泛的应用 ...
- python opencv3 —— 常用工具、辅助函数、绘图函数(图像添加文本、矩形等几何形状)
1. cv2.hconcat().cv2.vconcat() 将从摄像头捕获的多个图像帧,横向(cv2.hconcat)或纵向(cv2.vconcat)拼接到一起,使得可以在一个 window 中进行 ...
- (ES6)数据处理常用工具方法收集(更新状态: on)
1. 扁平数组转成tree结构(来源: StackOverflow的印度老哥写的) // Data Set // One top level comment var comments = [{ id: ...
- Python 数据处理库 pandas 入门教程
Python 数据处理库 pandas 入门教程2018/04/17 · 工具与框架 · Pandas, Python 原文出处: 强波的技术博客 pandas是一个Python语言的软件包,在我们使 ...
- Python 数据处理库pandas教程(最后附上pandas_datareader使用实例)
0 简单介绍 pandas是一个Python语言的软件包,在我们使用Python语言进行机器学习编程的时候,这是一个非常常用的基础编程库.本文是对它的一个入门教程. pandas提供了快速,灵活和富有 ...
- Python数据处理进阶——pandas
对于python进行数据处理来说,pandas式一个不得不用的包,它比numpy很为强大.通过对<利用python进行数据分析>这本书中介绍pandas包的学习,再加以自己的理解,写下这篇 ...
- Python 爬虫的工具列表大全
Python 爬虫的工具列表大全 这个列表包含与网页抓取和数据处理的Python库.网络 通用 urllib -网络库(stdlib). requests -网络库. grab – 网络库(基于pyc ...
随机推荐
- [ubuntu][mysql 5.7]安装后没有密码?如何登录
环境:(2020-04-21) WSL ubuntu LTS 18.04.1 mysql Ver 14.14 Distrib 5.7.29, for Linux (x86_64) 找到随机密码 # 显 ...
- Python——关于定义过程
def sum(a,b): a = a + b return a print(sum(1,2)) s = 3 t = 5 print(sum(s,t)) 题目:你觉得前三行代码会输出什么? 1.输入两 ...
- Map接口之HashMap,LinkedHashMap,TreeMap
Map与Collection 并列存在,用于保存具有映射关系的数据:Key-Value Map中的Key和Value都可以是任何引用类型的数据 Map中的Key用Set存放,不允许重复,即同一个Map ...
- php mysqli使用
连接到数据库$mysqli = new mysqli(主机,用户,密码,数据库); 选择数据库$mysqli->select_db(数据库);设置编码$mysqli->set_charse ...
- Beta冲刺 —— 总结随笔
这个作业属于哪个课程 软件工程 这个作业要求在哪里 Beta冲刺 这个作业的目标 Beta冲刺 作业正文 正文 github链接 项目地址 其他参考文献 无 一.项目预期计划: 1.对于初版小程序的现 ...
- Rocket - tilelink - RegisterRouter
https://mp.weixin.qq.com/s/DaJhf7hEoWsEi_AjwSrOfA 简单介绍RegisterRouter的实现. 1. 基本介绍 实现挂在Tile ...
- (Java实现) 洛谷 P1012 拼数
题目描述 设有nn个正整数(n≤20)(n≤20),将它们联接成一排,组成一个最大的多位整数. 例如:n=3n=3时,3个整数13,312,343联接成的最大整数为:3433121334331213 ...
- Java实现蓝桥杯凑算式(全排列)
题目6.凑算式 凑算式 B DEF A + - + ------- = 10 C GHI (如果显示有问题,可以参见[图1.jpg]) 这个算式中AI代表19的数字,不同的字母代表不同的数字. 比如: ...
- Java实现 LeetCode 241 为运算表达式设计优先级
241. 为运算表达式设计优先级 给定一个含有数字和运算符的字符串,为表达式添加括号,改变其运算优先级以求出不同的结果.你需要给出所有可能的组合的结果.有效的运算符号包含 +, - 以及 * . 示例 ...
- Java实现 LeetCode 15 三数之和
15. 三数之和 给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组. 注意:答案中不可以 ...