【发布时间】:2018-10-26 12:23:56
【问题描述】:
我有一个 python (3.7.0) 脚本文件,它包含 17,000 多个文本文件,然后逐行处理每个文件以将所需数据填充到 pandas 数据框中。所以代码如下是 Script1.py 文件:
def filePrpcesserFunc(file):
data = open(file, 'r')
for line in data.readlines():
#Does some computing here to get var1, var2, var3
#var1, var2, var3 are all integers
return var1, var2, var3
if __name__ == '__main__':
import glob2
import pandas
files = glob2.glob("*.txt")
#There are more than 17,000 text files to be computed
X = pandas.DataFrame()
for file in files:
rvar1, rvar2, rvar3 = fileProcesserFunc(file)
X.loc[str(rvar1), str(rvar2)] = rvar3
现在上面的 python 脚本运行了超过 17,000 个文件来生成 pandas 数据帧 X,它只需要计算一次即可获取数据(并且计算非常昂贵)。我需要在另一个脚本文件(比如)Script2.py 中使用这个数据框来制作机器学习模型,因此为了测试我的模型,我需要一次又一次地访问 X,即我会需要一次又一次地运行 Script2.py。 任何人都可以提出任何建议吗?我会非常感谢你。
【问题讨论】:
标签: python python-3.x pandas