导入财务数据,按月统计收款金额,按发票抬头统计收款金额。


'''
@author:姜广明
@@data:2021125日
导入财务数据,按月统计收款金额,按发票抬头统计收款金额。
需要先对‘收款金额’列的空值,进行填充‘发票金额’。
'''

"需要导入pandas模块,导入numpy模块"
"需要导入导入xlrd模块,导入xlwt模块"
"导入openpywt模块"
import pandas as pd
import numpy as np
from openpyxl import load_workbook   #等xlrd和xlwt模块失效后在使用openpyxl模块重新编程

charge = pd.read_excel('chargeSKDJApplyExport.xls', skiprows=1)
# registration = pd.read_excel('d:/Python Temp/chargeSKDJApplyExport.xls', skiprows=1, usecols='A,C,F,G,H,I,R,T,U')
'''A="收款单号"B="登记部门"C="核算项目"D="登记人"E="登记时间"F="审批状态"G="合同编号"H="委托单位"I="收款金额"J="发票金额"K="撤回原因"L="发票抬头"M="开票项目"N="纳税人识别号"O="地址、电话"P="开户行及账号"Q="开票状态"R="发票类别"S="开票备注"	

'''

'----------------------------------------'
charge =pd.DataFrame(charge)
charge['登记时间'] = pd.DatetimeIndex(charge['登记时间'])  #将“登记时间”设为日期索引格式
charge.sort_values(by='登记时间', inplace=True)  #按照索引重新排序
charge = charge.set_index('登记时间')   #设置索引
'----------------------------------------'
charge['收款金额'].fillna(charge['发票金额'], inplace=True)
# charge['收款金额'].fillna(method='bfill', limit=1, axis=0, inplace=True) #纵向填充空值,但是实际上我们需要的是横向填充空值
# print(charge['收款金额'].isnull())   #显示“收款金额”列有多少为空
# print(charge['收款金额'].isnull().sum())  #统计“收款金额”列有多少为空

'----------------------------------------'
# print(charge)  #打印数据
# print(charge['2020']) #获取2020年数据
# print(charge['2020-01']) #获取202001月数据
# # print(charge['2020-01-17':'2020-01-17']) #获取20200117日数据
'----------------------------------------'
# print(charge)
# print(charge.resample('M').sum())   #按月统计“收款金额”和“发票金额”
'----------------------------------------'



'----------------------------------------'
charge.to_excel('charge_out.xls')
# charge.to_period('M').to_excel('charge_out_按月显示.xls')  #按月显示所有收款信息
charge.resample('M').sum().to_excel('charge_out_按月统计.xls')
charge.groupby('发票抬头').sum().to_excel('charge_out_发票抬头分类.xls')  #按发票抬头统计所有企业的收款金额,按金额重新排序,划分百分比




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值