首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python报表自动化

2.Excel制作过程 结合以上两张图,我们知道利用Excel的数据透视表功能就制作该报表:选中数据表中任意一个单元格,点击插入数据透视表,然后以下步骤执行: 将合同生效日字段放在页区域(筛选今年)...将单位字段放在透视表的行区域。 ? 当处理到单位字段时我们会发现,表中每一笔贷款都有三家网点进行业绩分成。我们需要将分成比例也考虑进去。所以透视表中的行区域及区域不能简单的放入单位1和贷款金额。...import pandas as pd from datetime import datetime # 因为后面需要处理到日期筛选,所以需要将datetime类从datetime模块中加载进来 data...3.5数据分组/透视 3.5.1空处理 此时利用info()返回的数据可以判断data4是否存在空。...然后下图所示点击 Run All 执行以上代码就可以一键完成我们每天需要的日报了。 ? 其实以上模型处理除了可以计算年累计投放数据以外,我们还可以通过修改日期筛选的范围。

4K41
您找到你想要的搜索结果了吗?
是的
没有找到

技术|数据透视表,Python也可以

接下来就给大家讲一下如何在Python中实现数据透视表的功能。 ? pivot ? pd.pivot_table 这就是实现数据透视表功能的核心函数。显而易见,这个函数也是基于Pandas的。...在使用这个功能之前,需要先import pandas as pd哦~ pivot这个单词本身就已经告诉我们这个函数实现的功能类似于数据透视表(数据透视:data pivot) 需要指定的参数也和Excel...敲黑板,重点来了: index=列 colums=行 values= 有了这三个函数,最最最基础的一个数据透视表就算是完成了。...最后给大家一个完整的pd.pivot代码: data_pivot=pd.pivot_table(data,index=['希望出现在透视表列位置的列名称'],columns=[‘希望出现在透视表列行置的列名称...'],values=['希望出现在透视表列行置的名称'],aggfunc=sum,fill_value=0,margins=True)

2K20

使用Pandas melt()重塑DataFrame

在本文中,我们将探讨 Pandas Melt() 以及如何使用它进行数据处理。 最简单的melt 最简单的melt()不需要任何参数,它将所有列变成行(显示为列变量)并在新列列出所有关联。...显示自定义名称 “变量”和“”是列名。...,并获取确认的日期列表 df.columns [4:] 在合并之前,我们需要使用melt() 将DataFrames 从当前的宽格式逆透视为长格式。...换句话说,我们将所有日期列转换为。使用“省/州”、“国家/地区”、“纬度”、“经度”作为标识符变量。我们稍后将它们进行合并。...所有这些都日期和国家/地区排序,因为原始数据已经国家/地区排序,并且日期列已经 ASC 顺序排列。

2.8K10

Pandas 25 式

操控缺失 把字符串分割为多列 把 Series 里的列表转换为 DataFrame 用多个函数聚合 用一个 DataFrame 合并聚合的输出结果 选择行与列 重塑多重索引 Series 创建透视表...这个数据集国家列出了酒水平均消耗量,如果想反转列序该怎么办? 最直接的方式是把 ::-1 传递给 loc 访问器,与 Python 里反转列表的切片法一样。 ?...创建透视表 经常输出类似上例的 DataFrame,pivot_table() 方法更方便。 ? 使用透视表,可以直接指定索引、数据列、与聚合函数。...设置 margins=True,即可为透视表添加行与列的汇总。 ? 此表显示了整体幸存率,及性别与舱型划分的幸存率。 把聚合函数 mean 改为 count,就可以生成交叉表。 ?...注意:日期是月-日-年的格式,闭市价有美元符,交易量有千分号。 接下来用链式方法实现更多样式。 ? 可以看到,这个表隐藏了索引,闭市价最小用红色显示,最大用浅绿色显示。

8.4K00

数据分析篇 | PyCon 大咖亲传 pandas 25 式,长文建议收藏

操控缺失 把字符串分割为多列 把 Series 里的列表转换为 DataFrame 用多个函数聚合 用一个 DataFrame 合并聚合的输出结果 选择行与列 重塑多重索引 Series 创建透视表...这个数据集国家列出了酒水平均消耗量,如果想反转列序该怎么办? 最直接的方式是把 ::-1 传递给 loc 访问器,与 Python 里反转列表的切片法一样。 ?...创建透视表 经常输出类似上例的 DataFrame,pivot_table() 方法更方便。 ? 使用透视表,可以直接指定索引、数据列、与聚合函数。...设置 margins=True,即可为透视表添加行与列的汇总。 ? 此表显示了整体幸存率,及性别与舱型划分的幸存率。 把聚合函数 mean 改为 count,就可以生成交叉表。 ?...注意:日期是月-日-年的格式,闭市价有美元符,交易量有千分号。 接下来用链式方法实现更多样式。 ? 可以看到,这个表隐藏了索引,闭市价最小用红色显示,最大用浅绿色显示。

7.1K20

Pandas使用DataFrame进行数据分析比赛进阶之路(二):日期数据处理:日期筛选、显示及统计数据

1、获取某年某月数据 data_train = pd.read_csv('data/train.csv') # 将数据类型转换为日期类型 data_train['date'] = pd.to_datetime...,但不统计 # 按月显示,但不统计 df_period_M = df.to_period('M').head() print(df_period_M) # 季度显示,但不统计 df_period_Q...= df.to_period('Q').head() print(df_period_Q) # 年度显示,但不统计 df_period_A = df.to_period('A').head() print...,并且统计 # 年统计并显示 print(df.resample('AS').sum().to_period('A')) # 季度统计并显示 print(df.resample('Q').sum()...2010-10-18/2010-10-24 147 5361 10847 2010-10-25/2010-10-31 196 5379 10940 ---- 附录:日期类型截图

4.7K10

通宵翻译Pandas官方文档,写了这份Excel万字肝货操作!

日期功能 本节将提到“日期”,但时间戳的处理方式类似。 我们可以将日期功能分为两部分:解析和输出。在Excel电子表格中,日期通常会自动解析,但如果您需要,还有一个 DATEVALUE 函数。...在 Pandas 中,您通常希望在使用日期进行计算时将日期保留为日期时间对象。输出部分日期(例如年份)是通过电子表格中的日期函数和 Pandas 中的日期时间属性完成的。...排序 Excel电子表格中的排序,是通过排序对话框完成的。 pandas 有一个 DataFrame.sort_values() 方法,它需要一个列列表来排序。...数据透视表 电子表格中的数据透视表可以通过重塑和数据透视表在 Pandas 中复制。再次使用提示数据集,让我们根据聚会的规模和服务器的性别找到平均小费。...在 Excel 中,我们对数据透视表使用以下配置: 等效的Pandas代码。

19.5K20

数据科学 IPython 笔记本 7.12 透视

透视表的动机 对于本节中的示例,我们将使用泰坦尼克上的乘客数据库,可通过 Seaborn 库获得(参见“可视化与 Seaborn”): import numpy as np import pandas...jakevdp/data-CDCbirths/master/births.csv births = pd.read_csv('data/births.csv') 看一下数据,我们看到它相对简单 - 它包含日期和性别分组的出生人数...深入的数据探索 虽然这不一定与透视表有关,但我们可以使用到目前为止涵盖的 Pandas 工具,从这个数据集中提取一些更有趣的特征。...我们必须从一点清理数据开始,删除由错误日期(例如,6 月 31 日)或缺失(例如,6 月 99 日)产生的异常值。...有了这个,我们可以使用query()方法(在“高性能 Pandas:eval()和query()”中进一步讨论)过滤掉出生数量在这些以外的行: births = births.query('(births

1K20

带公式的excel用pandas读出来的都是空和0怎么办?——补充说明_日期不是日期

起一篇,是因为 ①频繁修改需要审核比较麻烦 ②这个问题是数据源头的错误,不常碰到,而且可控的,楼主这里是因为积攒了大批数据,去改源头之前的也改不了,还是要手动,比较麻烦 先说问题,读取excel时候,日期不是日期格式是数字或常规...,显示的是四个数字,python读取出来的也是数字,写入数据库的也是数字而不是日期 附上读取带公式的excel的正文链接: https://blog.csdn.net/qq_35866846/article.../details/102672342 读取函数rd_exel循环之前先处理日期 sheet1.Cells(2,3).NumberFormatLocal = "yyyy/mm/dd"#excel VBA语法...#添加到循环之前,2行3列对应C2是数字格式的日期 处理这个问题,楼主本人电脑是可以跑通的完全没问题,注意打印出来date,看下格式,跟平常见的不是太一样!...pywintypes.datetime(2019, 10, 20, 0, 0, tzinfo=TimeZoneInfo(‘GMT Standard Time’, True)) 是一个时间模块,我本来以为是pandas

1.5K20

利用 Python 实现 Excel 办公常用操作!

本文用的主要是pandas,绘图用的库是plotly,实现的Excel的常用功能有: Python和Excel的交互 vlookup函数 数据透视表 绘图 以后如果发掘了更多Excel的功能,会回来继续更新和补充...如下图,如何把张一的消费额全部列出?...python实现:vlookup函数有两个不足(或者算是特点吧),一个是被查找的一定要在区域里的第一列,另一个是只能查找一个,剩余的即便能匹配也不去查找了,这两点都能通过灵活应用if和indirect...[3] 问题:需要汇总各个区域,每个月的销售额与成本总计,并同时算出利润 通过Excel的数据透视表的操作最终实现了下面这样的效果: python实现:对于这样的分组的任务,首先想到的就是pandas...的pivot_table的参数index/ columns/ values和Excel里的参数是对应上的(当然,我这话说了等于没说,数据透视表里不就是行/列/吗还能有啥。。)

2.6K20

难道Power Pivot都比普通透视表强吗?那我们就要谈谈他的不足之处。

普通的透视表能提供常用度量值的快速显示。 ? ? 3. 使用VBA上的不同 Power Pivot不能使用VBA进行创建,只能利用VBA很小的功能。 普通透视表则可以利用VBA进行灵活处理。 4....更改数据的不同 Power Pivot如果要更改数据,必须从数据源去更改 普通透视表的数据一般使用的是表,只需要在表格数据上进行更改即可。 5....透视表列名更改为其他列时的反应不同 Power Pivot把透视表列名更改为其他列后不会发生变化 ? 普通透射比把列名更改为其他列后对应数据则会相应换位 ? 6....报表筛选页的不同 在Power Pivot透视表中,无法使用报表筛选页。 ? 普通透视表则可以使用报表筛选页生成筛选的工作表。 ? 9....分组功能使用不同 Power Pivot透视表中,只有日期格式能实现自动分组功能,数字格式无法生成。 ? 普通透视表中,数字格式则可以实现自动分组功能。 ?

6K40

Python和Excel的完美结合:常用操作汇总(案例详析)

$2:$2,0),0)),下【Ctrl+Enter】组合键结束。...如下图,如何把张一的消费额全部列出?...python实现:vlookup函数有两个不足(或者算是特点吧),一个是被查找的一定要在区域里的第一列,另一个是只能查找一个,剩余的即便能匹配也不去查找了,这两点都能通过灵活应用if和indirect...,并同时算出利润 通过Excel的数据透视表的操作最终实现了下面这样的效果: python实现:对于这样的分组的任务,首先想到的就是pandas的groupby,代码写起来也简单,思路就是把刚才Excel...的pivot_table的参数index/ columns/ values和Excel里的参数是对应上的(当然,我这话说了等于没说,数据透视表里不就是行/列/吗还能有啥。)

1.1K20

Pandas三百题

获取当前时间 pd.Timestamp('now') Timestamp('2021-12-15 11:32:16.625393') 2-时间生成|指定范围 使用pandas天生成2021年1月1日至...从2021年1月1日开始,天生成10天日期 pd.date_range('2021-01-01',periods=10) DatetimeIndex(['2021-01-01', '2021-01-02...列转换为 pandas 支持的时间格式 df1['日期'] = pd.to_datetime(df1['日期']) df2['时间'] = pd.to_datetime(df2['时间']) 13 -...| 将 df1 的索引设置为日期,将 df1 数据向后移动一天 df1.set_index(['日期']).shift(1) 25 - 日期重采样|日 -> 周 周对 df1 进行重采样,保留每周最后一个数据...'日期').resample('M').last() 27 - 日期重采样|分钟 -> 日 日对 df2 进行重采样,保留每天最后一个数据 df2.set_index('时间').resample('

4.6K22

Pandas学习笔记05-分组与透视

对数据集进行分类,并在每组数据上进行聚合操作,是非常常见的数据处理,类似excel里的分组统计或数据透视表功能。...pandas提供了比较灵活的groupby分组接口,同时我们也可以使用pivot_table进行透视处理。 1.分组 分组函数groupby,对某列数据进行分组,返回一个Groupby对象。 ?...不同的聚合方法 3.数据透视 数据透视采用pivot_table方法,和excel数据透视表功能类似,其实可以和groupby分组统计进行相互转化 它带有许多参数: data:一个DataFrame对象...在数据透视表索引上进行分组的键。如果传递了数组,则其使用方式与列相同。 columns:与数据或它们的列表具有相同长度的列,Grouper,数组。在数据透视表列上进行分组的键。...如果传递了数组,则其使用方式与列相同。 aggfunc:用于汇总的函数,默认为numpy.mean。 ? 演示数据 数据透视操作 ? 简单的数据透视对不同列使用不同的方法 ?

98330

对比Excel,学习pandas数据透视

Excel中做数据透视表 ① 选中整个数据源; ② 依次点击“插入”—“数据透视表” ③ 选择在Excel中的哪个位置,插入数据透视表 ④ 然后根据实际需求,从不同维度展示结果 ⑤ 结果如下 pandas..."中的行; columns 相当于上述"数据透视表字段"中的列; values 相当于上述"数据透视表字段"中的; aggfunc 相当于上述"结果"中的计算类型; margins 相当于上述"结果"...dropna 表示是否删除缺失,如果为True时,则把一整行全作为缺失删除; fill_value 表示将缺失,用某个指定填充。...pivot_table.xlsx") display(df.sample(5)) df.insert(1,"月份",df["销售日期"].apply(lambda x:x.month)) display...pd.read_excel(r"C:\Users\黄伟\Desktop\pivot_table.xlsx") display(df.sample(5)) df.insert(1,"月份",df["销售日期

1.7K10

对比Excel,学习pandas数据透视

Excel中做数据透视表 ① 选中整个数据源; ② 依次点击“插入”—“数据透视表” ③ 选择在Excel中的哪个位置,插入数据透视表 ④ 然后根据实际需求,从不同维度展示结果 ⑤ 结果如下 pandas..."中的行; columns 相当于上述"数据透视表字段"中的列; values 相当于上述"数据透视表字段"中的; aggfunc 相当于上述"结果"中的计算类型; margins 相当于上述"结果"...dropna 表示是否删除缺失,如果为True时,则把一整行全作为缺失删除; fill_value 表示将缺失,用某个指定填充。...pivot_table.xlsx") display(df.sample(5)) df.insert(1,"月份",df["销售日期"].apply(lambda x:x.month)) display...pd.read_excel(r"C:\Users\黄伟\Desktop\pivot_table.xlsx") display(df.sample(5)) df.insert(1,"月份",df["销售日期

1.5K20
领券