我想要一个遍历(1095,10000)数组的第30行的循环,返回一个scipy.stats.describe(matrix[30])
并将这些结果写入列表中
我尝试手动进行操作并且可以正常工作,我正在尝试优化代码
stats150 = scipy.stats.describe(matrix[150])
list_for_stats +=['150:', stats150]
stats180 = scipy.stats.describe(matrix[180])
list_for_stats += ['180:', stats180]
statsOut = open("myOutputStatsFile.txt", "w")
for line in list_for_stats:
# write line to output file
statsOut.write(str(line))
statsOut.write("\n")
statsOut.close()
一个for循环,比我已有的更直观
答案 0 :(得分:0)
假设矩阵是一个numpy数组,此循环将遍历(1095,10000)个矩阵的第30行,并将scipy.describe结果和行号作为字符串存储在列表中:
import numpy as np
import scipy
matrix = np.ones(shape=(1095,10000))
list_for_stats=[]
for i in range(0,matrix.shape[0],30):
list_for_stats +=[str(i)+':', scipy.stats.describe(matrix[i])]