import pandas as pd import datetime df_201=pd.read_excel(r'C:\Users\82422\Desktop\问E讲堂excel\5.04问医晚上数据.xlsx',sheet_name='邀请用户信息') df_201=df_201.drop(['编号','用户ID'],axis=1) #df_201=df_201.rename(columns={'累计观看时长': '2023.5.04累计观看时长'}) #df_201=df_201.rename(columns={'累计观看时长': str(datetime.date.today())+'累计观看时长'}) #将累计观看时长更改成当前日期的累计观看时长 print(df_201.head())import pandas as pd import os df1=pd.DataFrame() for root,dirs,files in os.walk(r'C:\Users\82422\Desktop\问E讲堂excel'): print('root:\n',root) print('dirs:\n',dirs) print('files:\n',files) for file in files: file_name=os.path.join(root,file) df=pd.read_excel(file_name,sheet_name='邀请用户信息') df=df.drop(['编号','用户ID'],axis=1) df=df.rename(columns={'累计观看时长': file[0:4] +'累计观看时长'}) df_201=pd.merge(df,df_201,on=['邀请人昵称','用户昵称'],how='outer') print(df_201) df_201.to_excel(r'C:\Users\82422\Desktop\问E讲堂excel\h2.xlsx',sheet_name='邀请用户信息')优化这个代码
时间: 2023-06-13 10:08:16 浏览: 224
import pandas as pd
import os
# 读取 5.04问医晚上数据.xlsx 中的邀请用户信息,并删除编号和用户ID列
df_201 = pd.read_excel(r'C:\Users\82422\Desktop\问E讲堂excel\5.04问医晚上数据.xlsx', sheet_name='邀请用户信息')
df_201.drop(['编号', '用户ID'], axis=1, inplace=True)
# 将累计观看时长更改成当前日期的累计观看时长
today = pd.Timestamp.today().strftime('%Y.%m.%d')
df_201.rename(columns={'累计观看时长': today + '累计观看时长'}, inplace=True)
# 遍历问E讲堂excel目录下的所有.xlsx文件,读取邀请用户信息,并合并到df_201中
for root, dirs, files in os.walk(r'C:\Users\82422\Desktop\问E讲堂excel'):
for file in files:
if file.endswith('.xlsx'):
file_name = os.path.join(root, file)
if file_name != r'C:\Users\82422\Desktop\问E讲堂excel\5.04问医晚上数据.xlsx':
df = pd.read_excel(file_name, sheet_name='邀请用户信息')
df.drop(['编号', '用户ID'], axis=1, inplace=True)
date = file.split('.')[0] # 获取文件名中的日期
df.rename(columns={'累计观看时长': date + '累计观看时长'}, inplace=True)
df_201 = pd.merge(df, df_201, on=['邀请人昵称', '用户昵称'], how='outer')
# 将合并后的结果保存为 h2.xlsx
df_201.to_excel(r'C:\Users\82422\Desktop\问E讲堂excel\h2.xlsx', sheet_name='邀请用户信息', index=False)
阅读全文