Учитывая следующую кривуюКак найти точку перегиба рядов данных с использованием Matlab?
Я хотел бы определить индекс точки х-данных, где кривая начинает возрастать всерьез (в этом примере, который был бы вокруг х = 15).
Хотя я понимаю, что производные могут быть использованы для определения точек перегиба, обратите внимание, что данные являются шумными, и я не уверен, что этот подход позволил бы мне четко идентифицировать «истинную точку перегиба» (тогда x = 15).
мне интересно, если более простой подход был бы возможным, такие как
- найти 4 точки данных, где x1 x2 < < < x3 x4
- возвращение индекса x1
У вас есть любые предложения о том, как это сделать?
Выборочные данные из выше кривой
index SQMean
_____ ____________
'0' '139.428574'
'1' '133.298706'
'2' '135.961044'
'3' '143.688309'
'4' '133.298706'
'5' '133.181824'
'6' '134.896103'
'7' '146.415588'
'8' '142.324677'
'9' '128.168839'
'10' '146.116882'
'11' '146.766235'
'12' '134.675323'
'13' '138.610382'
'14' '140.558441'
'15' '128.662338'
'16' '138.480515'
'17' '153.610382'
'18' '156.207794'
'19' '183.428574'
'20' '220.324677'
'21' '224.324677'
'22' '230.415588'
'23' '226.766235'
'24' '223.935059'
'25' '229.922073'
'26' '234.389618'
'27' '235.493500'
'28' '225.727280'
'29' '241.623383'
'30' '225.805191'
'31' '240.896103'
'32' '224.090912'
'33' '230.467529'
'34' '248.285721'
'35' '233.779221'
'36' '225.532471'
'37' '247.337662'
'38' '233.000000'
'39' '241.740265'
'40' '235.688309'
'41' '238.662338'
'42' '236.636368'
'43' '236.025970'
'44' '234.818176'
'45' '240.974030'
'46' '251.350647'
'47' '241.857147'
'48' '242.623383'
'49' '245.714279'
'50' '250.701294'
'51' '229.415588'
'52' '236.909088'
'53' '243.779221'
'54' '244.532471'
'55' '241.493500'
'56' '245.480515'
'57' '244.324677'
'58' '244.025970'
'59' '231.987015'
'60' '238.740265'
'61' '239.532471'
'62' '232.363632'
'63' '242.454544'
'64' '243.831161'
'65' '229.688309'
'66' '239.493500'
'67' '247.324677'
'68' '245.324677'
'69' '244.662338'
'70' '238.610382'
'71' '243.324677'
'72' '234.584412'
'73' '235.181824'
'74' '228.974030'
'75' '228.246750'
'76' '230.519485'
'77' '231.441559'
'78' '236.324677'
'79' '229.935059'
'80' '238.701294'
'81' '236.441559'
'82' '244.350647'
'83' '233.714279'
'84' '243.753250'
Почему вы отмечаете этот вопрос как 'c'? – chqrlie
Привет, торр, было бы хорошо обратиться к вашему аналогичному предыдущему вопросу и объяснить, как это отличается от другого. –
Нахождение 4 очков не очень надежное. Вы можете попытаться установить функцию шага в данные или скопировать значения в нижние и верхние, например. используя «kmeans (X, 2)», а затем используйте границы кластера, чтобы найти ваш переход. В любом случае может быть хорошей идеей сгладить данные сначала с помощью 'smooth' или, возможно,' wiener'. – Thomas