解决按列名匹配多个Excel表
根据Python Pandas中的Merge函数匹配多个拥有相同列名的excel表
代码如下
df = pd.DataFrame({'start_date':[]}) #start_date 为匹配列名
name_list = [] #创建name_list 重命名匹配后df的columns
for i in range(len(Rt_list)): # Rt_list为os.listdir()后获取的所有文件的list
df1 = pd.read_csv('./AFRO/B/'+Rt_list[i]) #读取文件
df1 = df1[['start_date','Median(R)']] #选择需要的列,重铸DF
df = df.merge(df1,on='start_date',how='outer') #合并使用外连接,merge的四种方法可以上网查询,大家都讲的很详细,其中可以使用merge(suffixes函数重命名,但是目前还不会)
name_list.append(Rt_list[i].replace('.csv','_Rt')) #df的新columns,后续替换用
df1表格如下所示,提取出start_date,Median(R)两列
最终匹配完成结果为