python讀取某幾列CSV數據,再寫入新的文件


轉載請注明出處:python讀取某幾列CSV數據,再寫入新的文件


測試數據:100萬條。7列100萬行。

操作:刪除第一列,保留其他列的數據,寫入到新文件中。

源數據:
在這里插入圖片描述
結果數據:
在這里插入圖片描述


'''
    使用python的pandas庫讀取某幾列CSV文件,再寫入新的文件。
'''
import pandas as pd
import time

#處理函數
def readwrite(input_file,output_file):
        #pd.read_csv() 將CSV文件讀入並轉化為數據框(DataFrame)形式。
        #參數設置:
        #filepath_or_buffer:str 文件路徑
        #sep:str 指定分隔符,默認為','。
        #delimiter:str 定界符/備選分隔符(如果指定該參數,則sep參數失效),默認為None。
        #header:int/list 指定第幾行作為列名/表頭;默認header=0(即第一行作為列名);如果沒有列名的話,設置header=None。
        #names:array 指定列的名稱。一般沒有列名時(即header=None),可以用來添加列名。
        #nrows:int 要讀取的文件的行數,對於大文件很有用。
        #skiprows:list-like/int 文件開頭要跳過的行數。
        #encoding:str 用於utf的編碼。utf-8。
        data = pd.read_csv(input_file,sep=',',header=None)

        #pd.to_csv() 將數據框(DataFrame)寫入本機電腦。
        #參數設置:
        #path_or_buf:str 文件路徑
        #sep:str 分隔符
        #na_rep:str 將NaN轉換為特定值。
        #columns:list 指定哪些列寫進去。
        #header:int/lis 默認header=0;如果沒有列名的話,設置header=None。
        #index 索引,默認True,寫入索引。
        data.to_csv(output_file,sep=',',columns={1,2,3,4,5,6},header=None,index=False)

#計時函數
def getRunTimes( fun ,input_file,output_file):
    begin_time=int(round(time.time() * 1000))
    fun(input_file,output_file)
    end_time=int(round(time.time() * 1000))
    print('Data processing completed')
    print("Data processing total time:",(end_time-begin_time),"ms")

#調用
input_file="D:/xxxxx/csv_data/four_variables/s1000000.csv"
output_file="D:/xxxxx/csv_data/three_variables/s1000000.csv"
readwrite(input_file,output_file)
getRunTimes(readwrite,input_file,output_file) #使用dataframe讀寫數據

在這里插入圖片描述


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM