我有一个永远不会改变的大型数据集(我从不直接修改它)。我从和熊猫一起读它开始
dataset = pandas.read_csv(filepath)然后我做一些数据分析。初始文件加载大约需要10秒,我现在每次更改数据分析部分的内容时都会重新运行它。如何一次性加载数据并只运行分析部分?
发布于 2017-08-22 08:44:19
这个问题的答案有点取决于你没有分享的细节。也许最好的方法是序列化您正在构建的最终数据结构。
创建一个方法,该方法读取csv并构建您感兴趣的任何数据结构。构造完成后,使用pickle输出结构。然后,当您的程序加载时,从pickle中解压数据结构。
我假设这里最耗时的部分是你一遍又一遍地重复这个程序。如果程序一直运行,那么您应该将数据结构保存在活动内存中的一个集中位置。这里的天真方法是全局的,你不应该这样做,我提到的只是概念上的目的。
发布于 2017-08-22 08:46:29
在交互式Python会话中,读取数据集:
>>> dataset = pandas.read_csv(filepath)然后,无论您在何处编写Python代码(在单独的窗口中、在IDE中或任何地方),都要创建数据分析函数并将其保存在其自己的python模块中。
在交互会话中导入并运行:
>>> from module1 import analysis1
>>> results = analysis1(dataset)检查结果,确定需要进行哪些更改,创建一个新的单独的python模块,然后运行:
>>> from module2 import analysis2
>>> results = analysis2(dataset)继续这样,直到你完成为止。
https://stackoverflow.com/questions/45807324
复制相似问题