Python实现读取csv文件并进行排序
作者:wendy_ya 发布时间:2021-06-27 08:37:59
从本文开始,本系列将介绍python简单案例并进行代码展示,本文的案例是利用pandas库实现读取csv文件并按照列的从小到大进行排序。
前言
CSV 是什么?
CSV 文件最开始可能有人会误认为是 Excel 的一种文件格式,包括我还没了解过 CSV 文件之前,也一直认为 CSV 格式的文件就是 Excel 保存后的另一种文件格式,下面就简单介绍一下 CSV 到底是什么。
CSV (Comma-Separated Values) 是一种相对简单、通用的文件格式,通常叫做逗号分隔值,也有人叫它字符分隔值,因为分隔字符不一定是逗号。其文件是以纯文本的形式存储表格数据,相当于一个结构化表的纯文本形式。
CSV 通常应用在程序之间转移数据场景下使用,因为 CSV 存储的格式通用且简单,适合转换为其它数据格式。比如将数据库中的数据导出存储为 CSV 文件,再将 CSV 数据文件导入到其它程序,这样就轻松实现了程序与程序之间的数据交换。
再比如,使用 Python 写爬虫程序爬取某网站上的数据时,最开始,网站上的数据往往都是比较杂乱的,将爬取到的数据存储到 CSV 文件中,可以很方便地查看数据、修改数据。
CSV 通常可以使用 Excel 打开查看,也可以使用 Wndows 记事本程序打开,你也可以使用如 Notepad++、 Sublime 等编辑器打开,阅读到此,是不是觉得 CSV 非常灵活、实用了。
一、案例描述
scalars.csv是一个三列若干行的文件。第一列为Wall time,表示无用数据;第二列为Step,绘图时用于横轴;第三列为Value,绘图时用于纵轴。
读取scalars.csv第三列元素(Value)进行从小到大排序并绘制图像。
二、代码讲解
首先导入相应的库:
import pandas as pd
import matplotlib.pyplot as plt
read_csv用于读取csv文件,header指定列标题,usecols指定读取第二列和第三列(第二列作为横,第三列作为纵)。
sort_values用于进行排序,by指定要排序的名称;axis指定要排序的轴,默认为0即按行排序;ascending指定升序排列还是降序排列,默认为True表示升序,False指定降序排列即按照从大到小进行排序。
# 对scalars.csv第三列元素进行从大到小排序并绘制图像
txt=pd.read_csv('scalars.csv',header=0,usecols=[1,2])
# 按Value排序,默认升序,ascending=False指定降序排列即按照从大到小进行排序
txt2=txt.sort_values(by=["Value"],ascending=False)
最后绘制排序前和排序后的图像。
# 创建画布
plt.figure(figsize=(10,6),dpi=100)
# 排序前的图像
plt.plot(txt['Step'],txt['Value'])
# 显示图形
plt.show()
# 排序后的图像
plt.plot(txt['Step'],txt2['Value'])
# 显示图形
plt.show()
三、完整代码
完整代码如下:
import pandas as pd
import matplotlib.pyplot as plt
# 对scalars.csv第三列元素进行从大到小排序并绘制图像
txt=pd.read_csv('scalars.csv',header=0,usecols=[1,2])
# 按Value排序,默认升序,ascending=False指定降序排列即按照从大到小进行排序
txt2=txt.sort_values(by=["Value"],ascending=True)
# 创建画布
plt.figure(figsize=(10,6),dpi=100)
# 排序前的图像
plt.plot(txt['Step'],txt['Value'])
# 显示图形
plt.show()
# 排序后的图像
plt.plot(txt['Step'],txt2['Value'])
# 显示图形
plt.show()
来源:https://blog.csdn.net/didi_ya/article/details/128955628


猜你喜欢
- 本期我们将展示一种对路面类型和质量进行分类的方法及其步骤。为了测试这种方法,我们使用了我们制作的RTK数据集。路面分类该数据集[1]包含用低
- 前言本人因为比较喜欢看漫画和动漫, 所以总会遇到一些问题, 因为订阅的漫画或者动漫太多, 总会忘记自己看到那一章节或者不知道什么时候更新.
- isdecimal()方法检查字符串是否仅由十进制字符组成。此方法只存在于unicode对象。注意:要定义一个字符串为Unico
- 数据解析数据解析就是将爬取到的整个页面中的局部的内容进行提取。python中常用的数据解析方式有以下三种:bs4(python中独有的)xp
- 一、前言想必大家都玩过贪吃蛇的游戏吧:通过操纵蛇的移动方向能够让蛇吃到随机出现的食物,吃到的食物越多,蛇就会变得越长,但如果不小心撞到了自己
- 为什么要同步SQL Server 2000 数据库,它都用在什么场合SQL Server 2000 数据库同步配置的原理从0开始一步一步配置
- Python学习笔记--坐标轴范围参靠视频:《Python数据可视化分析 matplotlib教程》链接:https://www.bilib
- 一、问题代码如下,发现标题的中文显示的是方块import matplotlibimport matplotlib.pyplot as plt
- 前言:pandas中排序的几种常用方法,主要包括sort_index和sort_values。基础数据:import pandas as p
- 1、||(逻辑或),从字面上来说,只有前后都是false的时候才返回false,否则返回true。alert(true||false); /
- 1.定义帕累托图:是一种特殊的直方图, 在项目管理知识体系中属于质量管理的工具。 它可以帮助观众了解哪些因素对结果影响最大。它基于帕累托原则
- alert table 表名 add column 列名 alter table 表名 drop column 列名 eg: alter t
- 如下所示:$ary = array( array('t'=>1,'y'=>2), &
- 这篇文章主要介绍了Python input函数使用实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋
- apscheduler 模块安装apscheduler 模块pip install apschedulerapscheduler 模块介绍A
- Python中的数据可视化matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地
- 用过NumPY的应该都知道,在二维数组中可以方便地使用区域切片功能,如下图:而这个功能在Python标准库的List中是不支持的,在List
- 本文实例为大家分享了css+html+js实现五角星评分的具体代码,供大家参考,具体内容如下效果图:css:<style>&nb
- SQL 标准使用 CREATE TABLE 语句创建数据表;MySQL 则实现了三种创建表的方法,支持自定义表结构或者通过复制已有的表结构来
- 这篇文章主要介绍了Python socket模块ftp传输文件过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学