问题如下。
说我正在尝试对有关能量E的数据进行排序。通常从实验室回来,您将获得一维能量数据表,然后进行频率计数,转换为E-计数N表,然后尝试绘制直方图这可以在python中轻松完成,例如使用Numpy,Matplotlib或Seaborn包。
但是,我的问题直接逆转了。我现在有了频率计数表,并想进行重新采样。现在,我希望使用numpy.random.choice
来生成更多数据以弥补实验期间的时间不足,但这需要您首先提供一个样本数组,如果我理解正确的话,应该在我的实验中形成一维原始数据数组。情况,是能量E的数组。
因此,我想出了以下代码,试图将E-N表单独转换为E表,但是显然,我花了太多时间来运行它。 (主要思想是,如果N_j = 3,则用E_j将表追加3次。)
#I have 5 sets of data
dat_raw = np.empty((5, 0))
for i in range(5):
x = dat_time[i, 0]
y = dat_time[i, 1]
for j in range(len(y)):
while y[j]!=0:
for k in range((Len(y[j])):
np.append(dat_raw[i], (x[j]))
plt.figure()
for i in range(5):
sns.histplot(dat_raw[i])
plt.show()
所以我问是否有更简单的方法可以实现我的目标?