2.查看单日交易总额最小的3天的交易数据,并查看这三天是周几,程序运行后直接输出这些结果。
3.把所有员工的工号前面增加一位数字,增加的数字和原工号最后一位相同,把修改后的数据写入新文件“超市营业额2_修改工号.xlsx”。例如,工号1001变为11001,1003变为31003。
4.把每个员工的交易数据写入文件“各员工数据.xlsx”,每个员工的数据占一个worksheet,结构和“超市营业额2.xlsx”一样,并以员工姓名作为worksheet的标题。
from copy import deepcopy
import pandas as pd
import xlrd
import openpyxl
# 1
df = pd.read_excel("超市营业额2.xlsx")
df2 = df.groupby(by="日期", as_index=False).agg({"交易额": "sum"}).nsmallest(3, '交易额')
print(pd.to_datetime(df2.日期).dt.day_name())
# 2
df = pd.read_excel("超市营业额2.xlsx")
df3 = deepcopy(df)
df3['工号'] = df['工号'].map(lambda s: str(s)[-1] + str(s))
df3.to_excel('超市营业额2_修改工号.xlsx',index = False)
# 3
df = pd.read_excel('超市营业额2.xlsx')
writer = pd.ExcelWriter('各员工数据.xlsx')
names = set(df['姓名'].values)
for name in names:
dff = df[df.姓名==name]
dff.to_excel(writer,sheet_name=name,index=False)
writer.save()