IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> критерии правильной фильтрации
_pasha
сообщение 18.12.2014, 11:44
Сообщение #1


тот самый
Иконка группы

Группа: Мод
Сообщений: 13065
Регистрация: 24.11.2009
Из: Харьковская обл., UA
Пользователь №: 25



Привет!
Какие могут быть критерии правильной фильтрации данных эксперимента?
т.е. кроме как минимум СКО ничего не понимаю. girl_crazy.gif
Объясню почему.
У чела есть идентификация модели по результатам экскремента, как говорил батька Ангел в известном фильме.
Экскремент сильно зашумлен.
Что главнее: состоятельность параметрической идентификации или минимум СКО по недостаточно идентифицированной модели.
когда-то читал известную книжку "идентификация систем. теория для пользователей"
усьо выветрилось с головы за 20 лет.
Т.е. вапроц: с чего начать для обоснования сабжа?
Картинку пока не выкладываю, без ведома клиента
Перейти в начало страницы
 
+Цитировать сообщение
orthodox
сообщение 19.12.2014, 2:25
Сообщение #2


ДИКТАТОР
Иконка группы

Группа: Мод
Сообщений: 22893
Регистрация: 20.11.2009
Из: Житомир
Пользователь №: 3



Цитата(_pasha @ 18.12.2014, 12:44) *
Привет!
Какие могут быть критерии правильной фильтрации данных эксперимента?
т.е. кроме как минимум СКО ничего не понимаю. girl_crazy.gif
Объясню почему.
У чела есть идентификация модели по результатам экскремента, как говорил батька Ангел в известном фильме.
Экскремент сильно зашумлен.
Что главнее: состоятельность параметрической идентификации или минимум СКО по недостаточно идентифицированной модели.
когда-то читал известную книжку "идентификация систем. теория для пользователей"
усьо выветрилось с головы за 20 лет.
Т.е. вапроц: с чего начать для обоснования сабжа?
Картинку пока не выкладываю, без ведома клиента

Начать с отбрасывания заведомо хуйовых точек, насколько помню теорию.
Иначе они СКО сильно испортят. Но зависит от, наверное.
А, да — ещё надо где-то по сходной цене приобрести уверенность в том,
что отклонения действительно случайные, а не какой-то там артефакт или как это называется.
Перейти в начало страницы
 
+Цитировать сообщение
_pasha
сообщение 19.12.2014, 7:21
Сообщение #3


тот самый
Иконка группы

Группа: Мод
Сообщений: 13065
Регистрация: 24.11.2009
Из: Харьковская обл., UA
Пользователь №: 25



Медиану запилить. girl_crazy.gif
Перейти в начало страницы
 
+Цитировать сообщение
_pasha
сообщение 8.1.2015, 19:11
Сообщение #4


тот самый
Иконка группы

Группа: Мод
Сообщений: 13065
Регистрация: 24.11.2009
Из: Харьковская обл., UA
Пользователь №: 25



Опишу тут вштыривший питон. Вот блин настолько красиво получается, хоть етот питон не очень нравится, но
Задача типовая. Файл с записанными данными хз сколько каналов
Раскидать по файликам одномерным тсз
Код
import array
#нужна матрица еще для других вещей
mtx = array.array('f')
infile=open('../data/ex1.txt')
outs=[open('ch{0}.dat'.format(n),'w') for n in range(8)]

for k in xrange(20):
    s=infile.readline()
# here the beginning
print 'File read'
for s in infile:
    ss= s.split(' ')
    nls=[]
    for nn in ss:
        if nn != '':
            nls += [float(nn)]
    mtx.fromlist(nls)

infile.close()

print 'Write files'
cnt=0
for vv in mtx:
    outs[cnt].write('{0}\n'.format(vv))
    cnt+=1
    if cnt == 8:
        cnt = 0

for kk in outs:
    kk.close()


Жалко шо у него футпринт не лунявый, пошел бы в микроконтроллеры аж бегом...
Перейти в начало страницы
 
+Цитировать сообщение
_pasha
сообщение 9.1.2015, 11:44
Сообщение #5


тот самый
Иконка группы

Группа: Мод
Сообщений: 13065
Регистрация: 24.11.2009
Из: Харьковская обл., UA
Пользователь №: 25



Примерчик. Медиана Ходжеса-Лемана
CODE

#входной вектор
ccl= bbb.tolist()
#ширина окна
NNN=11
print 'median, window width N=', NNN
# дальше считаем медиану Х.-Л. в скользящем окне и заменяем
# значения в векторе вычисленными знач. медианы
for j in xrange(len(ccl)):
#Обозначаем, что процесс еще дышит
if (j % 50000)==0:
print 'Done:' ,j
#срез вектора длиной в NNN
vec = ccl[j:(j+NNN)]
#дополняем данные до 0 в конце преобразования
for k in xrange(len(vec),NNN):
vec +=[0]
#вектор куда помещаем полусуммы элементов
# длина его равна NNN*(NNN+1)/2
puk = []
for i in xrange(NNN):
for k in xrange(i,NNN):
puk.append((vec[i]+vec[k])/2)
#полученный массив сортируем
puk.sort()
#и находим для него медиану
lng=len(puk)
ll = lng //2
if (lng % 2) != 0:
var= puk[ll]
else:
var = (float(puk[ll-1])+ float(puk[ll]))/2
#записываем найденное значение на место исходного
ccl[j]=var
Перейти в начало страницы
 
+Цитировать сообщение
_pasha
сообщение 9.1.2015, 19:17
Сообщение #6


тот самый
Иконка группы

Группа: Мод
Сообщений: 13065
Регистрация: 24.11.2009
Из: Харьковская обл., UA
Пользователь №: 25



А фильтры из SciPy? clapping.gif обалдеть!
Перейти в начало страницы
 
+Цитировать сообщение

Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 20.6.2018, 17:28