caog
import pandas as pd#匹配可发库存
1.
import os
lst=os.listdir(r'E:\每日必做\琪琪小象库存')
lst1=[]
for i in lst:
if i[:2] == '12':
print(i)
path='E:/每日必做/琪琪小象库存/'+i
a=pd.read_excel(path,sheetname='Sheet1')
a['日期']=i.replace('.','/').replace('xlsx','')
lst1.append(a[['商家编码','日期','可发库存']])
print(i)
print(a.sheet_names)
df_user = pd.concat(lst1, axis=0, ignore_index=True)
df_user.to_excel(r'C:\Users\Administrator\Desktop\12月库存.xlsx')
2.
df = pd.read_excel(r'C:\Users\Administrator\Desktop\12月退款分析\12月订单.xlsx')
kc = pd.read_excel(r'C:\Users\Administrator\Desktop\12月退款分析\12月库存.xlsx')
aa = pd.DataFrame((str(x).split(' ') for x in df['付款时间']), index=df.index, columns=['日期1', '付款时刻'])
df['日期'] =aa['日期1']
bb = pd.DataFrame((str(x).split(' ') for x in kc['日期']), index=kc.index, columns=['日期1', '付款时刻'])
kc['日期'] = bb['日期1']
df['商家时间']=df['日期']+df['商家编码']
kc['商家时间']=kc['日期']+kc['商家编码']
df = pd.merge(df, kc[['商家时间', '可发库存']], how='left', on=['商家时间'])
for i in df.index:
if df['可发库存'].at[i]<15:
df['可发库存'].at[i]=0
elif df['可发库存'].at[i]>=15:
df['可发库存'].at[i]=1
df.to_excel(r'C:\Users\Administrator\Desktop\12月退款分析\12月订单校对_1.xlsx')#另存为
3.
df = pd.read_excel(r'C:\Users\Administrator\Desktop\12月退款分析\12月订单.xlsx')
ys_order=pd.read_excel(r'C:\Users\Administrator\Desktop\12月退款分析\12月原始订单.xlsx')#读取原始订单
ys_order.drop_duplicates(subset='原始单号', keep='first', inplace=True)#删除原始订单重复值
df.rename(columns={'子单原始单号':'原始单号'},inplace=True)
new_order=pd.merge(df,ys_order[['原始单号','支付时间']],how='left',on='原始单号')
new_order.to_excel(r'C:\Users\Administrator\Desktop\12月退款分析\12月订单校对.xlsx')
4.
df=new_order
new_order=df[df['订单来源']=='接口抓取']
# print('总销量:'+str(df['下单数量'].sum()))#显示总销量
df = pd.read_excel(r'C:\Users\lenovo\Desktop\aa\12.xlsx')
kc = pd.read_excel(r'C:\Users\lenovo\Desktop\aa\12月库存.xlsx')
bb = pd.DataFrame((str(x).split(' ') for x in kc['日期']), index=kc.index, columns=['日期1', '付款时刻'])
kc1 = pd.merge(kc, bb, left_index=True, right_index=True)
aa = pd.DataFrame((str(x).split(' ') for x in df['付款时间']), index=df.index, columns=['日期1', '付款时刻'])
df = pd.merge(df, aa, left_index=True, right_index=True)
df['日期']=aa['日期1']
kc['商家时间']=kc1['日期1']+kc1['商家编码']
df['商家时间']=df['日期']+df['商家编码']
result = pd.merge(df, kc[['日期', '商家编码','可发库存','商家时间']], how='left', on='商家时间') new_order=df.merge(ys_order[['原始单号','支付时间']],how='left',left_on='子单原始单号',right_on='原始单号',sort=False)#vlookup原始单号的付款时间
df=new_order
#更改付款时间
for i in df.index:
if df['付款时间'].at[i]!=df['支付时间'].at[i]:
print('on')
df['付款时间'].at[i]=df['支付时间'].at[i]
# print(df[['付款时间','支付时间']])
df.to_excel(r'C:\Users\lenovo\Desktop\订单1.xlsx')#另存修改付款时间后的文件
caog的更多相关文章
- java基础学习总结——this关键字
一.this关键字
- (十二)this关键字
---摘自孤傲苍狼博客 一.this关键字 this是一个引用,它指向自身的这个对象. 看内存分析图:
- java基础—this关键字
一.this关键字
随机推荐
- FreeMarker与Thymeleaf
FreeMarker 是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯 Java 编写,FreeMarker 被设计用来生成 HTML Web 页面,特别是基于 MVC 模式的应用程序,虽然 ...
- numpy+plot初试
#coding:utf-8 """ 灵活设置筛子个数,比如3个筛子 """ import numpy as np import matplo ...
- redist命令操作(一)--键key,字符串String
1.Redis 字符串(String) 参考菜鸟教程:http://www.runoob.com/redis/redis-strings.html 设置指定key的值,如果原来有,覆盖 127.0.0 ...
- activiti-用户与用户组
https://my.oschina.net/acitiviti/blog/283892 activiti学习笔记3-用户与用户组 收藏 安世博 发表于 3年前 阅读 5507 收藏 10 点赞 0 ...
- 两年前详细分析了ijkplayer的代码
两年前详细分析了ijkplayer的代码,太久没总结了,现在只能上传一张图片了.把fly替换成ijk就行了. 用diagramDesigner画的,因为这个工具足够简单,用visio不知道要画到什么时 ...
- python 变量之小整数池跟大整数池
在python中定义变量会有:id,type,value.对于==比较的是value,对于is比较的是id. 因此,对于相同value的变量,它的type相同,但是它的id值可能不一样.对于相同id的 ...
- oracle如何创建存储过程和调用
oracle存储过程的创建语法 create or replace procedure 存储过程名称 ( --定义输入.输出参数-- 参数名1 in 参数类型, 参数名2 in 参数类型, 参数名3 ...
- Win10系列:C#应用控件进阶10
EllipseGeometry EllipseGeometry控件可以用于绘制椭圆,通过定义EllipseGeometry控件的Center属性确定椭圆的圆心坐标,使用此控件的RadiusX 和Rad ...
- python 对象存储OSS 阿里云
SDK参考 ->python->上传文件->简单上传 # -*- coding: utf-8 -*- import oss2 auth=oss2.Auth('<yourAcc ...
- js定义函数方式有。。。
1,常见方式 function fun(data,...){ console.log(data); } 注:随处可调用 2. 函数直接定义函数 var fun = function (data,.. ...