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关键字
随机推荐
- Redis发布订阅方法
进入redis中 docker run -it redis:latest redis-cli -h 192.168.28.56 (本机的ip地址) 以下实例演示了发布订阅是如何工作的.在我们实例中我们 ...
- 阿里云 RDS for MySQL支持什么引擎
问题:我们的服务器是买的是阿里云,mysql版本5.011 ,本地和服务器配置一样,在本地可以安装discuzX3.4,但是在服务器上却报错了,如下图: 找了半天,才知道阿里云RDS 支持的mysql ...
- c#+Unity3D
Windows系统unity3d中的快捷键 自己整理常用; f2 改名 shift + 三维轴中间:45度 点击左键时 F:聚焦 V顶点贴合 ws拉近拉远 ad左右 qe 上下 长按右键 自由调换视角 ...
- 解决安卓JNI native 线程不能正常退出问题二
直面这个解决方法的可以看我转载的博客 https://www.cnblogs.com/Carlsblog/p/9438016.html 本方法是个投机取巧法,不过也解决了不能正常 ...
- Linux系统启动过程(通俗易懂)
前言: Linux是一种自由和开放源代码的类UNIX操作系统.该操作系统的内核由林纳斯·托瓦兹在1991年10月5日首次发布.在加上用户空间的应用程序之后,成为Linux操作系统.Linux是自由软件 ...
- hdu1256
画横线总是一个字符粗,竖线随着总高度每增长6而增加1个字符宽.当总高度从5增加到6时,其竖线宽度从1增长到2.下圈高度不小于上圈高度,但应尽量接近上圈高度,且下圈的内径呈正方形.每画一个"8 ...
- html入门1
1.HTML超文本标记语言,(Hypertext Markup Language),通过一段内容定义为标题,段落或者图像等,从而让该内容具有结构以及含义 2.W3C:万维网联盟(World Wide ...
- Mysql 源码:关于innodb中两次写的探索
转载自:http://www.cnblogs.com/bamboos/p/3553703.html?utm_source=tuicool&utm_medium=referral 两次写可以说是 ...
- netty解码器详解(小白也能看懂!)
什么是编解码器? 首先,我们回顾一下netty的组件设计:Netty的主要组件有Channel.EventLoop.ChannelFuture.ChannelHandler.ChannelPipe等. ...
- 记一次 SSM 分页
1.实体层(entity,pojo,domain) package com.entity; import java.io.Serializable; private int totalCount; / ...