Example #1
0
def DrawLines(lines):
    ax = gca()
    for line in lines:
        tline = Line2D((line[0], line[2]), (line[1], line[3]))
        ax.add_line(tline)


n, w, a = read_para(sys.argv[1:])

#1 represent SAX and calculate the frequence

x = Time_series.Time_series_CAR(n)
data = x.tolist()
sax = SAX(w, a, 1e-6)
(letters, indices) = sax.to_letter_rep(data)
frq = sax.symbol_frequency(data)

#2 Dimensionality reduction with linear interprolation

a = np.asarray(data, dtype=np.float64)
newdata = (a + np.random.normal(0, 3, n)).tolist()
nordata = normalize(a[:, np.newaxis], axis=0).ravel()

figure()
lines = WindowSliding.WindowSliding(nordata, Fitting.Fitting,
                                    Fitting.SumofSquaredError)
DrawPlot(nordata, 'Pecewise linear approximation with Sliding Window')
DrawLines(lines)
show()
Example #2
0
    fname = 'file.txt'
    if os.path.isfile(fname) and file_len(fname) / 5 <= 20:
        flen = file_len(fname) / 5 + 1
        mode = 'a'
    else:
        flen = 1
        mode = 'w'
    f = open(fname, mode)
    f.write("----------------------%d---------------------\n" % flen)
    f.write("SAX parameters: %s\n" % str(para))
    f.write("Symbolic letters: %s\n" % letters)
    f.write("Indices: %s\n" % str(indices))
    f.write("freq: %s\n" % str(freq))
    f.close()


n, w, a = read_para(sys.argv[1:])
para = {'n': n, 'w': w, 'a': a}
# represent SAX and calculate the frequence

x = Time_series.Time_series_CAR(n)
newx = x.tolist()
sax = SAX(w, a, 1e-6)
(letters, indices) = sax.to_letter_rep(newx)
frq = sax.symbol_frequency(newx)

# Write Data and information to files

WriteDataFiles(newx)
WriteInfoFile(letters, indices, frq, para)