如何使用命令 'np.random.normal' 用单个输入文件生成多个输出文件?

How to produce multiple output files with a single input file using the command 'np.random.normal'?

我有一个包含 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 行数据在我想要的参数范围内随机化。我的上述命令是否足以读取每一行数据并执行我想要的操作?

除此之外更复杂的部分是我想要 运行 这 1,000 次并生成 1,000 个 .txt 文件(1.txt、2.txt ... 1000.txt) 其中每个 运行 完全相同的命令。

我尝试在脚本中 运行 循环时卡住了,因为我还很缺乏经验。我什至无法按照自己的意愿开始 运行ning - 我也很困惑如何处理使用不同名称保存的文件。我以前用过np.savetxt,但不知道如何让它执行这个任务。

感谢您的帮助!

有两个小问题 - 第一个涉及如何 select 文件名(可以使用 python 对字符串连接的支持来解决),第二个涉及 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)