使用pandas库对csv文件进行筛选保存


Posted in Python onMay 25, 2020

这个操作现在看来真没啥难的,但是我找相关的资料真的找了好久。

多数大佬都是直接pandas官网甩我脸上,然后举一个入门级的例子。

https://pandas.pydata.org/docs/reference/index.html

首先导入pandas库

import pandas as pd

然后使用read_csv来打开指定的csv文件

df = pd.read_csv('./IP2LOCATION.csv',encoding= 'utf-8')

这个函数里面需要写入csv文件的路径,如果是把csv文件保存到了python的工程文件夹下,则只需要./文件名即可,然后encoding='utf-8'是使用utf-8方式编码,有时候需要换成gbk。

虽然我们读取的是csv文件,但其实由于我们使用的是pandas库,所以我们实际获得的是一个DataFrame的数据结构。

可以使用print(type(df))进行检验

print(type(df))

使用pandas库对csv文件进行筛选保存

DataFrame 是表格型的数据结构。因此,我们可以将其当做表格。DataFrame 是以表格类似展示,而且还包含行标签、列标签。

我们可以添加一个列标签,使用方法为pandas.DataFrame.columns

在我们的例子中DataFrame类型的变量为df,因此使用方法为df.columns,我们添加的列标签为a、b、c、d、e、f

df.columns = ['a','b','c','d','e','f']

然后,我们想把某一列中等于特定值的那些行提取出来

可以将读出来的内容当做一个列表,然后这个列表的元素是表中的每一行,然后这每一行也是一个列表,也就是列表中的列表。

比如,我想将表中第5列中值为Andhra Pradesh的行提取出来,并且由于我们之前定义了第五列的列标签为e

因此代码为:

data = df[df['e'] == 'Andhra Pradesh']

最后我们可以通过pandas中的to_csv,来将筛选出来的数据保存到新的csv文件中。

data.to_csv('my_IP2LOCATION.csv')

用法为表名.to_csv('所要保存地方的路径/表名.csv')

最后总结一下我们的代码

import pandas as pd

df = pd.read_csv('./IP2LOCATION.csv',encoding= 'utf-8')
# print(type(df))
df.columns = ['a','b','c','d','e','f']
data = df[df['e'] == 'Andhra Pradesh']
data.to_csv('my_IP2LOCATION.csv')

IP2LOCATION.csv内容如下:

使用pandas库对csv文件进行筛选保存

总共有759727行

然后经过我们的筛选后的my_IP2LOCATION.csv

使用pandas库对csv文件进行筛选保存

只有3461行

PS:可以使用print(len(df.values))来查看行数

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用PYTHON接收多播数据的代码
Mar 01 Python
Python 分析Nginx访问日志并保存到MySQL数据库实例
Mar 13 Python
Python中使用PDB库调试程序
Apr 05 Python
python判断windows系统是32位还是64位的方法
May 11 Python
python中的代码编码格式转换问题
Jun 10 Python
python实现决策树C4.5算法详解(在ID3基础上改进)
May 31 Python
利用scrapy将爬到的数据保存到mysql(防止重复)
Mar 31 Python
python 3.7.0 下pillow安装方法
Aug 27 Python
win10下python3.5.2和tensorflow安装环境搭建教程
Sep 19 Python
正确理解Python中if __name__ == '__main__'
Jan 24 Python
Pytorch实现LSTM和GRU示例
Jan 14 Python
python 调用Google翻译接口的方法
Dec 09 Python
pytorch中 gpu与gpu、gpu与cpu 在load时相互转化操作
May 25 #Python
基于pandas向csv添加新的行和列
May 25 #Python
Python如何把十进制数转换成ip地址
May 25 #Python
tensorflow模型转ncnn的操作方式
May 25 #Python
MxNet预训练模型到Pytorch模型的转换方式
May 25 #Python
浅谈pytorch 模型 .pt, .pth, .pkl的区别及模型保存方式
May 25 #Python
Pytorch通过保存为ONNX模型转TensorRT5的实现
May 25 #Python
You might like
杏林同学录(九)
2006/10/09 PHP
NOD32 v2.70.32 简体中文封装版 提供下载了
2007/02/27 PHP
php读取xml实例代码
2010/01/28 PHP
php中substr()函数参数说明及用法实例
2014/11/15 PHP
php实现简单的语法高亮函数实例分析
2015/04/27 PHP
PHP使用递归算法无限遍历数组示例
2017/01/13 PHP
PHP实现双链表删除与插入节点的方法示例
2017/11/11 PHP
jQuery基础知识小结
2014/12/22 Javascript
jQuery插件Skippr实现焦点图幻灯片特效
2015/04/12 Javascript
简单谈谈关于 npm 5.0 的新坑
2017/06/08 Javascript
VUE axios发送跨域请求需要注意的问题
2017/07/06 Javascript
Vue的移动端多图上传插件vue-easy-uploader的示例代码
2017/11/27 Javascript
vue 页面加载进度条组件实例
2018/02/05 Javascript
vue小白入门教程
2018/04/02 Javascript
react中实现搜索结果中关键词高亮显示
2018/07/31 Javascript
微信开发之微信jssdk录音功能开发示例
2018/10/22 Javascript
js消除图片小游戏代码
2019/12/11 Javascript
JavaScript cookie原理及使用实例
2020/05/08 Javascript
使用element-ui +Vue 解决 table 里包含表单验证的问题
2020/07/17 Javascript
在Python的Flask框架中使用日期和时间的教程
2015/04/21 Python
Python实现一个转存纯真IP数据库的脚本分享
2017/05/21 Python
Python爬虫实例_城市公交网络站点数据的爬取方法
2018/01/10 Python
简单了解python模块概念
2018/01/11 Python
python正则表达式匹配[]中间为任意字符的实例
2018/12/25 Python
详解python tkinter教程-事件绑定
2019/03/28 Python
使用python快速实现不同机器间文件夹共享方式
2019/12/22 Python
python字典和json.dumps()的遇到的坑分析
2020/03/11 Python
python调用有道智云API实现文件批量翻译
2020/10/10 Python
appium+python自动化配置(adk、jdk、node.js)
2020/11/17 Python
学生出入校管理制度
2014/01/16 职场文书
2014年综治宣传月活动总结
2014/04/28 职场文书
模具专业求职信
2014/06/26 职场文书
2014党员四风对照检查材料思想汇报
2014/09/17 职场文书
党员民主生活会对照检查材料思想汇报
2014/09/28 职场文书
思品教学工作总结
2015/08/10 职场文书
2019终止劳动合同协议书最新范本!
2019/07/09 职场文书