首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对300万个数据点进行大量计算并绘制图表的解决方案

对300万个数据点进行大量计算并绘制图表的解决方案
EN

Stack Overflow用户
提问于 2010-07-23 22:50:53
回答 4查看 559关注 0票数 2

我有一个excel电子表格,它大约有30万行和大约100列。

我需要在这个电子表格上执行各种功能,而在这个电子表格中,我需要创建大约3000个其他电子表格,它们要小得多。

对于每个创建的电子表格,我都需要一个独立的powerpoint文件,该文件将有一个自动生成的图表。

我做了很多VBA编程,但我对这个项目有点迷茫

  1. 如果我将数据转储到mysql文件中,那么处理任务会更容易吗?
  2. 在VBA excel中这样做可行吗?
  3. 是否可以通过编程方式将excel中的图形添加到powerpoint中?或者我是否应该对图使用不同的解决方案?
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-07-23 23:51:56

  1. 这在很大程度上取决于您计划如何处理数据。如果您计划用Excel编写代码,那么将其留在Excel中就更有意义了。话虽如此,我还是会将数据转储到CSV (逗号分隔的)中,以便使用不同的工具(如Python )进行进一步处理。
  2. 只要有足够的时间和金钱,一切都是可行的。如果您像大多数其他程序员一样,您没有太多的任何一个,所以您需要最有效的解决方案,或接近它。如果是我,我会用Python编写代码,从CSV文件中读取数据,执行所有必需的操作,并将3000个单独的输出集保存为单独的CSV文件,这些文件可以导入Excel。
  3. 从VBA创建和操作图表可能很困难。我将使用像Matplotlib这样的Python库来生成所有的图形输出,这些输出将作为PNG映像保存到磁盘中,可以插入到Powerpoint演示文稿中。

这里只提到Python作为一个例子。您应该使用您最熟悉的工具;但是,以编程方式处理数据的概念(而不是通过相互关联的单元格引用和公式加上一些VBA来复制工作表等等)应该仍然适用,这将是您在这里前进的最佳方式。我做了很多你描述的那种工作。将数据输入CSV并用代码处理数据。

票数 2
EN

Stack Overflow用户

发布于 2010-07-24 00:11:16

这在所有方面都是可行的,但是VBA可能会为此付出太多的开销,因为它在打开和关闭3000个电子表格和演示文稿的Excel和PowerPoint实例时很麻烦。如果这是一个一次性的解决方案,而且您只需要这样做一次,那么VBA的开发当然是快速的,所以您可以通过使用对象模型来预先节省很多费用。另一种选择是通过C#或VB.NET中的互操作应用程序来实现这一点,在那里您可能对环境有更多的控制,比如垃圾收集。

但是,如果您正在使用Excel 2007/2010 (我假设您使用的是300 k行),我会做一些不同的事情。我会在VBA中的主XLSX上执行calc例程,然后使用Open处理和创建带有图表的3000份电子表格和演示文稿。(Note:我不会在主XLSX上使用Open,因为它实际上不会呈现内置的计算-您仍然需要打开XLSX来“水合物”电子表格--所以在这种情况下VBA会更好)。

如果您是开放XML的新手,那么您需要提前学习很多知识,因此这一过程可能并不值得。但是,如果您想知道或者已经打开了,那么像XML这样的文章是非常有帮助的,这是一个很好的起点(因为它也处理图表)。但是,您也可以在Open上使用一个包装器,比如简单OOXML,它非常适合于启动。

票数 2
EN

Stack Overflow用户

发布于 2010-07-24 00:27:44

看看被称为"R“的开源统计系统。它非常擅长从真实世界的数据集中编程生成图表。

http://www.r-project.org/

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3322939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档