Python用pandas 处理 CSV文件 三
回顾一下前面CSV处理的知识
文章 1 Python处理CSV文件
文章2 Python处理CSV 之 二
pandas工具作为数据分析中的利器也可以处理CSV文件
- 安装pandas
pip install pandas
- 创建一个CSV文件 内容如下,这是一批刚入职的员工信息
Name,Hire Date,Salary,Sick Days remaining
Graham Chapman,03/15/14,50000.00,10
John Cleese,06/01/15,65000.00,8
Eric Idle,05/12/14,45000.00,10
Terry Jones,11/01/13,70000.00,3
Terry Gilliam,08/12/14,48000.00,7
Michael Palin,05/23/13,66000.00,8
读取CSV文件
import pandas
df = pandas.read_csv('hrdata.csv')
print(df)
Name Hire Date Salary Sick Days remaining
0 Graham Chapman 03/15/14 50000.0 10
1 John Cleese 06/01/15 65000.0 8
2 Eric Idle 05/12/14 45000.0 10
3 Terry Jones 11/01/13 70000.0 3
4 Terry Gilliam 08/12/14 48000.0 7
5 Michael Palin 05/23/13 66000.0 8
可以看到每一行有一个索引,从 0 开始到行数-1
获取所有的姓名
print(df["Name"])
0 Graham Chapman
1 John Cleese
2 Eric Idle
3 Terry Jones
4 Terry Gilliam
5 Michael Palin
Name: Name, dtype: object
指定索引
import pandas
df = pandas.read_csv('hrdata.csv', index_col='Name')
print(df)
# print(df["Name"]) 会报错
print(df["Salary"])
- print(df) 的结果: index_col='Name' 指定了索引列此时每一行的数字变成了Name
Hire Date Salary Sick Days remaining
Name
Graham Chapman 03/15/14 50000.0 10
John Cleese 06/01/15 65000.0 8
Eric Idle 05/12/14 45000.0 10
Terry Jones 11/01/13 70000.0 3
Terry Gilliam 08/12/14 48000.0 7
Michael Palin 05/23/13 66000.0 8
print(df["Name"] 会报错:
print(df["Name"])
- print(df["Salary"])
Name
Graham Chapman 50000.0
John Cleese 65000.0
Eric Idle 45000.0
Terry Jones 70000.0
Terry Gilliam 48000.0
Michael Palin 66000.0
Name: Salary, dtype: float64
获取第一个人的往期时间
print(df['Hire Date'][0])
- df['Hire Date'] 取日期列的所有数字变成一个数组
- df['Hire Date'][0] 取数组的第一个元素
在Excelt很容易表示这个过程,选选中第二列的所有数据,然后取第一个
读取CSV中部分列
import pandas
df = pandas.read_csv('hrdata.csv',
index_col='Employee',
parse_dates=['Hired'],
header=0,
names=['Employee', 'Hired','Salary', 'Sick Days'])
print(df)
Hired Salary Sick Days
Employee
Graham Chapman 2014-03-15 50000.0 10
John Cleese 2015-06-01 65000.0 8
Eric Idle 2014-05-12 45000.0 10
Terry Jones 2013-11-01 70000.0 3
Terry Gilliam 2014-08-12 48000.0 7
Michael Palin 2013-05-23 66000.0 8
- index_col='Employee', Employee实际上代码的是 Name的值
- parse_dates=['Hired'], 处理第二列日期
- header=0, 表示第0行是标题头,剩下行是数据
- names=['Employee', 'Hired','Salary', 'Sick Days']) 要显示的列名
相关文章
- Linux服务器硬件信息查询与日常运维命令总结
- Linux服务器带宽跑不满?用ethtool调优网卡参数,性能提升30%
- 如何在 Rocky Linux 中查看网卡流量?跟着小编学习iftop安装和使用
- Linux查看网卡速率_linux查看网卡当前速率
- 五一我要看七天小说!免费开源的轻量化书库talebook搭建流程。
- 我是如何用这3个小工具,助力小姐姐提升100%开发效率的
- html5和css3的常用参考网_基于html5和css3的网页制作
- 超详细的网络抓包神器 tcpdump 使用指南
- Vue 技术栈(全家桶)_vue全栈项目教程
- 学习ES6- 入门Vue(大量源代码及笔记,带你起飞)