Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.09.2010, 10:29   #1
strS
Пользователь
 
Регистрация: 16.01.2009
Сообщений: 19
По умолчанию Тренд

В общем у меня есть график, мне нужно построить для него линию тренда(линейную). Для построения этой прямой мне нужно узнать ее уравнение, а как его рассчитать я не понимаю.. Помогите пожалуйста.
strS вне форума Ответить с цитированием
Старый 10.09.2010, 13:27   #2
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

...сначала укажите, что вы сами понимаете под линией тренда ...лучше наглядно
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 10.09.2010, 19:41   #3
strS
Пользователь
 
Регистрация: 16.01.2009
Сообщений: 19
По умолчанию

Безымянный.png
Вот пример Нужно узнать как сделать черную линию(т.е. её уравнение)
Может это можно назвать регрессией, я точно не знаю
strS вне форума Ответить с цитированием
Старый 10.09.2010, 20:00   #4
vlad_light
Пользователь
 
Регистрация: 27.08.2010
Сообщений: 95
По умолчанию

а по какому принципу строится эта линия?
vlad_light вне форума Ответить с цитированием
Старый 10.09.2010, 21:25   #5
Vago
Форумчанин
 
Регистрация: 15.01.2010
Сообщений: 948
По умолчанию

Обычно - по принципу минимизации суммы квадратов расстояний от значений ф-ии до соответствующих значений линии тренда.
...
strS, в этом разделе принято, что просящий помощи показывает хоть какие-то свои идеи...
....
Формулы.
Алгоритм:
Код:
#!/usr/bin/python
# -*- coding: cp1251 -*-

from numpy import array

x = array( [1.5, 2.4, 3.2, 4.8,  5.0, 7.0,  8.43], dtype = float )
y = array( [3.5, 5.3, 7.7, 6.2, 11.0, 9.5, 10.27], dtype = float )
n = len( x )

x1 = y1 = 0.
for i in range(0, n):
    x1 += x[i] / float( n )
    y1 += y[i] / float( n )

Sx = Sy = Sxy = 0.
for i in range(0, n):
    Sx += (x[i]-x1) * (x[i]-x1)
    Sy += (y[i]-y1) * (y[i]-y1)
    Sxy += (x[i]-x1) * (y[i]-y1)

k = Sxy / Sx
b = y1 - k * x1
print "Trend line equation: %.5f X + %.5f" % (k, b)

#
Vago вне форума Ответить с цитированием
Старый 11.09.2010, 10:20   #6
strS
Пользователь
 
Регистрация: 16.01.2009
Сообщений: 19
По умолчанию

Vago, спасибо за помощь! Это новая для меня тема и у меня совершенно нету никаких идей как это сделать, единственное что нашел в нете это метод множественной регрессии, который сразу ввел меня в ступор))
strS вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как рассчитать какой тренд-убывающий или возрастающий? kate158 Microsoft Office Excel 3 06.09.2009 05:36
Как данные с массива передавать на тренд и таблицу? KuevProger Помощь студентам 1 20.03.2009 11:47