1. 程式人生 > 其它 >把一個csv資料檔案,第一行標頭檔案(欄位名)不變,按某列(第四列)降序排列,另行儲存為csv 檔案

把一個csv資料檔案,第一行標頭檔案(欄位名)不變,按某列(第四列)降序排列,另行儲存為csv 檔案

大家好,我是皮皮。

一、前言

前幾天在Python白銀交流群有個叫【大俠】的粉絲問了一個關於Python自動化辦公的問題,這裡拿出來給大家分享下,一起學習。把一個csv資料檔案,第一行標頭檔案(欄位名)不變,按某列(第四列)降序排列,另行儲存為csv 檔案。

二、解決過程

【dcpeng】解答

這裡給出了一個思路,傳統的常規思路,雖然很low,但是可行。

【德善堂小兒推拿-瑜亮老師】解答

瑜亮老師上來直接丟了程式碼,簡直王炸,這裡分享給大家。

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)

小夥伴們直呼好傢伙,著實給力,都不用百度了。

下圖是【瑜亮老師】學習Python資料分析的時候,看書做的筆記圖。

關鍵的地方還有筆記,用熒光筆標記了。後來【大俠】自己就上道了。

df.sort_values(col2, ascending=False):按照列col1降序排列資料 
df.sort_values([col1,col2], ascending=[True,False]):先按列col1升序排列,後按col2降序排列資料 

三、總結

大家好,我是皮皮。這篇文章基於粉絲提問,針對把一個csv資料檔案,第一行標頭檔案(欄位名)不變,按某列(第四列)降序排列,另行儲存為csv檔案的問題,給出了具體說明和演示,順利幫助粉絲解決了問題,大家也學到了很多知識。

最後感謝粉絲【大俠】提問,感謝【德善堂小兒推拿-瑜亮老師】大佬給出的示例和程式碼支援,感謝粉絲【孤煙逐雲】、【哈佛在等我呢~】、【dcpeng】、【冫馬訁成】、【PI】、【沈復】等人蔘與學習交流。

小夥伴們,快快用實踐一下吧!如果在學習過程中,有遇到任何問題,歡迎加我好友,我拉你進Python學習交流群共同探討學習。