Sklearn 提供了不同的数据生成函数,例如 make_blobs 和 make_regression,它们位于 sklearn.datasets 中。
然而,我不知道有哪些函数可以生成序列数据。是否有现成的库可以生成人工序列数据?
回答:
这取决于你想要哪种类型的序列。你可以查看这个仓库来生成不同类型的模拟序列。这个仓库名为 TimeSynth
但如果你只是想要一个可以轻松修改的方案,可以尝试编写一个类似于下面的函数:
def SynthSeries(start,end,stepSize,coefficients): import numpy as np samples = np.array(np.arange(start,end,stepSize)) array = np.array(np.zeros(np.shape(samples))) for coeff in coefficients: array = np.add(array,(np.sin(coeff*samples))) return array, samples
这有点像傅里叶变换的逆过程,如果你知道你想要创建的序列的基频,你可以将这些频率传入这个函数来重建信号。你可以这样使用它:
import matplotlib.pyplot as plt(SeqData,samples) = SynthSeries(0,20,0.1,[12,3,1,22])plt.plot(samples, SeqData)plt.show()
