Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python-pandas/openpyxl:自动化报告的技巧(远离VBA)。_Python_Excel_Vba_Pandas_Reporting - Fatal编程技术网

Python-pandas/openpyxl:自动化报告的技巧(远离VBA)。

Python-pandas/openpyxl:自动化报告的技巧(远离VBA)。,python,excel,vba,pandas,reporting,Python,Excel,Vba,Pandas,Reporting,我目前已经设置了宏来自动生成所有报告。但是,由于数据的大小,我的一些宏可能需要5-10分钟 我已经从Excel/VBA转移到Python/pandas进行数据分析和操作。我仍然使用excel进行数据可视化(即透视表) 我想知道其他人是如何使用python自动化他们的报告的?你们是干什么的?关于如何开始这个过程有什么建议吗 我的大多数宏执行以下操作- 导入文本文件 将原始数据粘贴到链接到透视表/图表的表中 刷新工作簿 另存为新 使用python自动生成报告时,我将报告从Excel完全转换为Pan

我目前已经设置了宏来自动生成所有报告。但是,由于数据的大小,我的一些宏可能需要5-10分钟

我已经从Excel/VBA转移到Python/pandas进行数据分析和操作。我仍然使用excel进行数据可视化(即透视表)

我想知道其他人是如何使用python自动化他们的报告的?你们是干什么的?关于如何开始这个过程有什么建议吗

我的大多数宏执行以下操作-

  • 导入文本文件
  • 将原始数据粘贴到链接到透视表/图表的表中
  • 刷新工作簿
  • 另存为新

使用python自动生成报告时,我将报告从Excel完全转换为Pandas。我使用pd.read_csv或pd.read_excel读取数据,并将完全格式化的数据透视表导出到excel中进行查看。根据我的经验,python无法很好地处理“粘贴到表中并刷新”的操作,并且可能仍然需要宏来正确处理,即,从python导出带有格式化数据的csv,然后运行一个短宏来复制和粘贴


如果你有任何更具体的问题,请问我,我已经做了一个很好的部分,

< p>我经常做数据报告,这里有一些你可以考虑帮助你的工具:

  • 蟒蛇/熊猫
  • 很高兴你已经熟悉了熊猫和蟒蛇。您可以使用以下方法导入Excel无法读取和操作的文本文件:

    import pandas as pd
    df = pd.read_csv('/path/to/your/text.csv')
    # carry out other data analysis like filtering, user-defined functions for special data manipulation etc.
    
    您还可以使用numpy进行数据操作和函数

  • 制图
  • 可以使用matplotlib打印图表:

    import matplotlib.pyplot as plt
    ax = df.plot()
    # manipulate charts by changing title, series, set intervals etc.
    plt.show()
    
  • 将文件导出为新的Excel工作簿
  • 由于您使用的是pandas,您只需使用它的
    [to_excel()][1]
    函数将数据框导出为新的excel工作簿即可:

    writer = pd.ExcelWriter('output.xlsx')
    df.to_excel(writer,'Sheet1')
    writer.save()
    

    希望这有帮助

    对于堆栈溢出来说,这个问题相当广泛,并且可能因此而被关闭。你可能想调查类似的事情。看看你能用它走多远,如果你的代码有特殊问题,再来看看!自动化您的流程应该很容易。使用上述建议。测试你的任何想法,并用谷歌搜索你不理解的问题的解决方案。我正在做和你一样的事。从一个环境到另一个环境只需要一点时间,因为它们完全不同。您的想法是正确的,Python比Excel快得多。最后,查看下面的链接,了解如何自动执行Python进程。