|

楼主 |
发表于 2024-8-7 11:13:47
|
显示全部楼层
我这个版本 可以实现目标 可是 感觉有些笨,能否帮忙优化一下
import pandas as pd
#导入数据
dfa = pd.read_excel('feiyongzhuanhuan.xlsx')
# 删除第一行数据,索引为 0
dfa = dfa.drop(index=0).reset_index(drop=True)
#删除1列2列5列
dfa = dfa.drop(["费用摊销","门店","收入"], axis=1)
dfa["编码"] = dfa["编码"].astype(int)
dfa.columns=["门店编码","门店名称","工资及奖金","物业租赁费","办公费","工资","办公"]
#print(dfa)
# 处理销售费用
sales_data1 = {
"费用类型": ["销售费用"] * len(dfa),
"门店编码": dfa["门店编码"],
"门店名称": dfa["门店名称"],
"二级科目": ["工资及奖金"]*len(dfa),
"金额":dfa["工资及奖金"]
}
sales_data2 = {
"费用类型": ["销售费用"] * len(dfa),
"门店编码": dfa["门店编码"],
"门店名称": dfa["门店名称"],
"二级科目": ["物业租赁费"]*len(dfa),
"金额":dfa["物业租赁费"]
}
sales_data3 = {
"费用类型": ["销售费用"] * len(dfa),
"门店编码": dfa["门店编码"],
"门店名称": dfa["门店名称"],
"二级科目": ["办公费"]*len(dfa),
"金额":dfa["办公费"]
}
sales_data4 = {
"费用类型": ["管理费用"] * len(dfa),
"门店编码": dfa["门店编码"],
"门店名称": dfa["门店名称"],
"二级科目": ["工资"]*len(dfa),
"金额":dfa["工资"]
}
sales_data5 = {
"费用类型": ["管理费用"] * len(dfa),
"门店编码": dfa["门店编码"],
"门店名称": dfa["门店名称"],
"二级科目": ["办公"]*len(dfa),
"金额":dfa["办公"]
}
new_df1 = pd.DataFrame(sales_data1)
new_df2 = pd.DataFrame(sales_data2)
new_df3 = pd.DataFrame(sales_data3)
new_df4 = pd.DataFrame(sales_data4)
new_df5 = pd.DataFrame(sales_data5)
#print(new_df1)
#print(new_df2)
#print(new_df3)
#print(new_df4)
#print(new_df5)
new_df_ov = pd.concat([new_df1,new_df2,new_df3,new_df4,new_df5], ignore_index=True)
print(new_df_ov)
print("game over") |
|