使用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入门篇之数字
Oct 20 Python
python根据unicode判断语言类型实例代码
Jan 17 Python
python求质数的3种方法
Sep 28 Python
Python操作json的方法实例分析
Dec 06 Python
django表单的Widgets使用详解
Jul 22 Python
pandas DataFrame的修改方法(值、列、索引)
Aug 02 Python
使用python实现希尔、计数、基数基础排序的代码
Dec 25 Python
pandas-resample按时间聚合实例
Dec 27 Python
python 图像的离散傅立叶变换实例
Jan 02 Python
利用Python的folium包绘制城市道路图的实现示例
Aug 24 Python
python向企业微信发送文字和图片消息的示例
Sep 28 Python
Python List remove()实例用法详解
Aug 02 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
PHP iconv 函数转gb2312的bug解决方法
2009/10/11 PHP
PHP5.5和之前的版本empty函数的不同之处
2014/06/13 PHP
用PHP代码在网页上生成图片
2015/07/01 PHP
PHP操作Redis常用技巧总结
2018/04/24 PHP
Javascript之文件操作
2007/03/07 Javascript
javascript 正则替换 replace(regExp, function)用法
2010/05/22 Javascript
SwfUpload在IE10上不出现上传按钮的解决方法
2013/06/25 Javascript
JS实现合并两个数组并去除重复项只留一个的方法
2015/12/17 Javascript
JavaScript中文件上传API详解
2016/04/01 Javascript
微信小程序学习(4)-系统配置app.json详解
2017/01/12 Javascript
使用微信内嵌H5网页解决JS倒计时失效问题
2017/01/13 Javascript
jQuery+pjax简单示例汇总
2017/04/21 jQuery
在vue中获取dom元素内容的方法
2017/07/10 Javascript
zTree节点文字过多的处理方法
2017/11/24 Javascript
Vue2.0仿饿了么webapp单页面应用详细步骤
2018/07/08 Javascript
详解Vue取消eslint语法限制
2018/08/04 Javascript
React 源码中的依赖注入方法
2018/11/07 Javascript
node(koa2) web应用模块介绍详解
2019/03/29 Javascript
vue 全局环境切换问题
2019/10/27 Javascript
Python中的引用和拷贝浅析
2014/11/22 Python
Python获取暗黑破坏神3战网前1000命位玩家的英雄技能统计
2016/07/04 Python
Python学习之用pygal画世界地图实例
2017/12/07 Python
python获取url的返回信息方法
2018/12/17 Python
更新pip3与pyttsx3文字语音转换的实现方法
2019/08/08 Python
python中的函数递归和迭代原理解析
2019/11/14 Python
python matplotlib:plt.scatter() 大小和颜色参数详解
2020/04/14 Python
css3实现可滑动跳转的分页插件示例
2014/05/08 HTML / CSS
HTML5中判断用户是否正在浏览页面的方法
2014/05/03 HTML / CSS
西班牙伏林航空公司:Vueling
2016/08/05 全球购物
《临死前的严监生》教学反思
2014/02/13 职场文书
《蒙娜丽莎之约》教学反思
2014/02/27 职场文书
人事部专员岗位职责
2014/03/04 职场文书
学习交流会主持词
2014/04/01 职场文书
车辆工程专业求职信
2014/06/14 职场文书
医学专业毕业生求职信
2014/06/20 职场文书
HTML页面中使两个div并排显示的实现
2022/05/15 HTML / CSS