我有一個目錄,我想對其進行更改的全套csv文件。每個csv都有一個包含日期的行,並且我想添加一個從文件長度向下計數到1的列(因此文件中的最後一個最近日期在該列中的值爲1。如何對目錄中的單個文件進行相同的更改?
我曾嘗試以下:
>import os
>import pandas as pd
>for f in os.listdir(path):
> df = pd.read_csv(f)
> df['Countdown'] = range(len(df), 1, -1)
這給我的
FileNotFoundError: File b'Data.csv' does not exist
錯誤這是奇怪的,因爲它給出了數據文件所在的目錄的具體名稱,所以它可以清楚地看到該文件,因爲它在錯誤消息中使用它的名稱。
我曾嘗試使用glob以及。
>import glob
>data_set = glob.glob(path)
>for f in data_set:
> df = pd.read_csv(f)
> df['Countdown'] = range(len(df), 1, -1)
,因爲它說這不起作用:
ValueError: Length of values does not match length of index
這個錯誤對我來說很有意義,因爲該數據幀的長度不斷增加,因爲我更多的文件添加到它,所以「len個(df)'參數正在改變,並且與索引不匹配。
我相信我所要做的並不是太獨特,我只是無法找到執行此任務的最佳方式。再次,我正在尋找具有單個文件的結果,每個文件都有一個從最早的日期起倒數爲列的長度的列,最近的日期的值爲1.
你的幫助。
'DF [ '新'] = np.arange(LEN(DF),0,-1)'? – MaxU