数据智慧:C#中编程实现自定义计算的Excel数据透视表
2023/12/25 14:03:28
本文主要是介绍数据智慧:C#中编程实现自定义计算的Excel数据透视表,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
前言
数据透视表(Pivot Table)是一种数据分析工具,通常用于对大量数据进行汇总、分析和展示。它可以帮助用户从原始数据中提取关键信息、发现模式和趋势,并以可视化的方式呈现。
在数据透视表中,数据分析师通常希望进行自定义计算。 例如,组合“数量”和“单价”字段即可获得“销售额”。 但是在某些情况中,需要对一些数据进行合并,比如把所有”黑龙江“的数据、”吉林“的数据和”辽宁“的数据合并在一起,并起一个新的名字叫”东北“。
而数据透视表的计算项功能则可以满足这样的业务需求。 因此小编今天为大家介绍的是如何使用Java将计算项添加到数据透视表中,具体步骤如下:
- 加载工作簿
- 创建数据透视表
- 将计算项添加到数据透视表
- 隐藏重复的名称项
- 保存工作簿
使用案例
现在某公司的采购经理需要基于下图(消费数据表)来分析订单的状态,并把除了”完成“之外的状态全部归类为”未完成“,并根据产品名称将所有”未完成“的产品金额叠加起来。
步骤一 加载工作簿
首先,在 GcExcel 中,使用如下代码加载源数据 Excel 文件。
Workbook workbook = new Workbook(); workbook.Open("SalesData.xlsx");
步骤二 创建数据透视表
接下来,为订单数据添加数据透视表。 该数据可从 Excel 文件中的“销售数据”工作表中获取。 使用 IWorksheet 接口的 Add 方法将数据透视表添加到新工作表,如下面的代码所示:
//添加一个sheet IWorksheet pivotSheet = workbook.Worksheets.Add(); pivotSheet.Name = "销售分析"; //添加透视表 IPivotCache pivotCache = workbook.PivotCaches.Create(workbook.Worksheets[0].Range["A1:G71"]); IPivotTable pivotTable = pivotSheet.PivotTables.Add(pivotCache, pivotSheet.Range["A1"]); pivotTable.PivotFields["产品"].Orientation = PivotFieldOrientation.RowField; pivotTable.PivotFields["状态"].Orientation = PivotFieldOrientation.RowField; pivotTable.PivotFields["分类"].Orientation = PivotFieldOrientation.ColumnField; pivotTable.PivotFields["金额"].Orientation = PivotFieldOrientation.DataField; pivotTable.DataFields["求和项:金额"].NumberFormat = "$#,##0_);($#,##0)";
显示效果如下所示:按照产品名将所有的消费订单进行分类。
步骤三 给透视表添加计算项
数据透视表准备就绪后,下一步是添加计算项。 通过ICalculatedItems 接口将计算项的集合添加到数据透视表字段。 添加名称和表达式,如下所示:
//基于状态字段创建计算项 ICalculatedItems statusCalcItems_lost = pivotTable.PivotFields["状态"].CalculatedItems(); //给计算项添加表达式 statusCalcItems_lost.Add("未完成", "=失败+退回+暂停");
此时的数据透视表将如下所示:已经出现了”未完成“状态的订单。
步骤四 隐藏不需要的项
添加计算项后,需要隐藏与计算项重复的项并避免重复计算:
//隐藏被归为“未完成”的字段 IPivotItems status = pivotTable.PivotFields["状态"].PivotItems; status["失败"].Visible = false; status["退回"].Visible = false; status["暂停"].Visible = false;
包含计算项目的数据透视表在这一步将如下所示:
步骤五 保存为Excel
最后,对单元格应用样式和格式、调整列宽等并保存工作簿。 最终报告如下图所示:
workbook.Save("数据透视表自定义计算.xlsx");
总结
使用计算项,您可以对字段项进行几乎任何类型的计算,并使您的分析结果看起来更加组合和合理。 您可以对字段项进行计算,例如
- 计算特定产品的折扣价格
- 计算一个项目与其他项目相比的百分比份额
- 使用备用名称引用字段项目等等
如果您想了解更多有关于计算项的资料,可以点击这里查看。
扩展链接:
Redis从入门到实践
一节课带你搞懂数据库事务!
Chrome开发者工具使用教程
从表单驱动到模型驱动,解读低代码开发平台的发展趋势
低代码开发平台是什么?
基于分支的版本管理,帮助低代码从项目交付走向定制化产品开发
这篇关于数据智慧:C#中编程实现自定义计算的Excel数据透视表的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2022-03-01沐雪多租宝商城源码从.NetCore3.1升级到.Net6的步骤
- 2024-12-06使用Microsoft.Extensions.AI在.NET中生成嵌入向量
- 2024-11-18微软研究:RAG系统的四个层次提升理解与回答能力
- 2024-11-15C#中怎么从PEM格式的证书中提取公钥?-icode9专业技术文章分享
- 2024-11-14云架构设计——如何用diagrams.net绘制专业的AWS架构图?
- 2024-05-08首个适配Visual Studio平台的国产智能编程助手CodeGeeX正式上线!C#程序员必备效率神器!
- 2024-03-30C#设计模式之十六迭代器模式(Iterator Pattern)【行为型】
- 2024-03-29c# datetime tryparse
- 2024-02-21list find index c#
- 2024-01-24convert toint32 c#