我有一个包含44,586行数据的文件。使用pylab读取它:
data = pl.loadtxt("20100101.txt")
density = data[:,0]
我需要运行像......
densities = np.random.normal(density, 30, 1)
np.savetxt('1.txt', np.vstack((densities.ravel())).T)
...并创建一个名为1.txt的新文件,该文件在我想要的参数中随机化了所有44,586行数据。我的上述命令是否足以在每行数据上读取并执行我想要的内容?
更复杂的部分 - 我希望运行1000次并生成1,000个.txt文件(1.txt,2.txt ... 1000.txt),每个文件运行完全相同的命令。
我在尝试在脚本中运行循环时陷入困境,因为我仍然非常缺乏经验。我很难开始按照我的意愿开始运行 - 我也很困惑如何处理用不同名称保存文件。我过去使用过np.savetxt,但不知道如何让它执行此任务。
感谢您的帮助!
答案 0 :(得分:2)
有两个小问题 - 第一个涉及如何选择文件的名称(可以使用pythons支持字符串连接来解决),第二个涉及np.random.normal
- 它只允许一个大小参数当loc是标量时。
data = pl.loadtxt("20100101.txt")
density = data[:,0]
for i in range(1, 1001):
densities = np.random.normal(loc=density, scale=30)
np.savetxt(str(i) + '.txt', densities)