我正在使用下面的代码。我所有的 CSV 文件都具有统一的结构。形成数据框后,它在我的 CSV 中包含两列日期。
在生成的数据框中,对于少数行,日期值位于第一个日期列中,而对于其余数据,它位于第二个日期列中。
知道为什么源 CSV 文件中的一列会生成两列(日期列)。
all_data = pd.DataFrame()
for f in glob.glob("/Users/tcssig/Desktop/Files/*.csv"):
df = pd.read_csv(f)
all_data = all_data.append(df,ignore_index=True)
In [76]: all_data.columns
Out[76]: Index(['0', '0.1', 'Channel_ID', 'Date', 'Date ', 'Duration (HH:MM)','Episode #', 'Image', 'Language', 'Master House ID', 'Parental Rating','Program Category', 'Program Title', 'StartTime_ET', 'StartTime_ET2','Synopsis'],
dtype='object')
请您参考如下方法:
因为你在第二列有一个空格:
'Date', 'Date '
^
因此您需要在追加之前规范化列
all_data = pd.DataFrame()
for f in glob.glob("/Users/tcssig/Desktop/Files/*.csv"):
df = pd.read_csv(f)
df.columns = df.columns.str.strip()
all_data = all_data.append(df,ignore_index=True)
这里我使用str.strip删除任何前导和尾随空格
