把一个csv数据文件,第一行头文件(字段名)不变,按某列(第四列)降序排列,另行保存为csv 文件

简介: 把一个csv数据文件,第一行头文件(字段名)不变,按某列(第四列)降序排列,另行保存为csv 文件

大家好,我是皮皮。


一、前言


前几天在Python白银交流群有个叫【大侠】的粉丝问了一个关于Python自动化办公的问题,这里拿出来给大家分享下,一起学习。把一个csv数据文件,第一行头文件(字段名)不变,按某列(第四列)降序排列,另行保存为csv 文件。

4c4a47a759decfc638ac7438c7ad6dcf.png


二、解决过程


【dcpeng】解答

这里给出了一个思路,传统的常规思路,虽然很low,但是可行。

f37949d56f146fc68cd226e3d536af51.png

【德善堂小儿推拿-瑜亮老师】解答

瑜亮老师上来直接丢了代码,简直王炸,这里分享给大家。

import pandas as pd
# 根据你自己的文件设置编码
df = pd.read_csv("test.csv", encoding="gbk")
print(df.head())
# 按照“总价”列降序,并重置索引
# 一列,一种排序方式也可以不写方括号。
# 如果想按照多列排序可以把列名都写进 by 参数列表中,并把它们的排序方式也写进 ascending 参数列表)
df = df.sort_values(by=["总价"], ascending=[False], ignore_index=True)
print(df.head())
# 另存为 test2.csv ,不写入索引
df.to_csv("test2.csv", index=False)


6dbf5ab2a28b05a9235917ef45b53568.png

小伙伴们直呼好家伙,着实给力,都不用百度了。

7553fae2db3b844ab3a775cbe1cea2af.png

下图是【瑜亮老师】学习Python数据分析的时候,看书做的笔记图。

a03bff9f742bada443aaaa6588fc1a95.jpg

关键的地方还有笔记,用荧光笔标记了。后来【大侠】自己就上道了。

df.sort_values(col2, ascending=False):按照列col1降序排列数据 
df.sort_values([col1,col2], ascending=[True,False]):先按列col1升序排列,后按col2降序排列数据

334796d29607bed084bf41403b3dd9ea.png


三、总结


大家好,我是皮皮。这篇文章基于粉丝提问,针对把一个csv数据文件,第一行头文件(字段名)不变,按某列(第四列)降序排列,另行保存为csv文件的问题,给出了具体说明和演示,顺利帮助粉丝解决了问题,大家也学到了很多知识。


最后感谢粉丝【大侠】提问,感谢【德善堂小儿推拿-瑜亮老师】大佬给出的示例和代码支持,感谢粉丝【孤烟逐云】、【哈佛在等我呢~】、【dcpeng】、【冫马讠成】、【PI】、【沈复】等人参与学习交流。


小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。


相关文章
|
3月前
包含多列或多行的单元格
包含多列或多行的单元格。
30 1
|
5月前
|
前端开发
纯前端导出表格数据 -- csv格式 (含表格末尾的自动合计行)
纯前端导出表格数据 -- csv格式 (含表格末尾的自动合计行)
38 0
|
Shell
从文件中删除重复行
从文件中删除重复行
88 1
|
索引
CSV文件读取——没有列索引如何处理
CSV文件读取——没有列索引如何处理
556 0
CSV文件读取——没有列索引如何处理
Panda处理CSV文件,如果A列值为空,则用B列值填充,如果B列值仍为空,用C列值填充A
Panda处理CSV文件,如果A列值为空,则用B列值填充,如果B列值仍为空,用C列值填充A
|
数据格式
Excel - 通过分隔符将单元格内容分列技巧
Excel - 通过分隔符将单元格内容分列技巧
373 0
Excel - 通过分隔符将单元格内容分列技巧

热门文章

最新文章