如何在Python中将频率2D数据转换为原始1D数据?

时间:2019-03-28 15:44:25

标签: python histogram frequency

问题如下。

说我正在尝试对有关能量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()     

所以我问是否有更简单的方法可以实现我的目标?

0 个答案:

没有答案