所以我有一个程序,它获取 .txt 数据(整数集),每 n 个数字(除法)求和,并将结果放入一个新列表中。然后它制作该列表的条形图。
到目前为止,它工作得很好。唯一的问题是我希望它让程序完成所有这些操作,而无需手动输入我希望它进行的分割数:\
我希望它通过让我们说一个循环,它将除以 10、11、12... 到我喜欢的任何数字,然后将它全部放在一个列表中,我最终会得到多个列表,然后我可以转移到excell、origin或任何其他程序,并在那里进行分析。
我将把程序放在没有绘图部分的情况下,以及我已经问过的一些额外的事情:
# -*- coding: cp1250 -*-
from __future__ import division
from numpy import *
from matplotlib import rc
from matplotlib.pyplot import *
import numpy as np
import matplotlib.pyplot as plt
data = loadtxt("mion-090513-1.txt", int)
nuz = len(data)
nsmp = 10
duz = int(nuz/nsmp)
L = []
ukupni_broj=sum(data)
#Summed values calculation#
for i1 in range(0,nsmp):
suma = 0
for i2 in range(0,duz):
suma += data[i1*duz+i2]
L.append(suma)
print L
print 'Bin number is', len(L)
print 'Total event number is', ukupni_broj
所以我基本上希望 nsmp 在一个 for 循环中,从一些值到一些值(例如从 10-15、25 间隔步骤中的 20-50 等等)。
那件事可行吗?
还有一种简单的方法可以在 python 中导出结果吗?我到处搜索,但没有发现像loadtxt
.
这是 .txt 文件:https://dl.dropboxusercontent.com/u/55620972/mion-090513-1.txt