|
Разделы:
Lifehack10
Данетки95
Игры139
Игры на бумаге17
Книги14
Конкурсы8
Логические задачи339
Люди3
Новости6
Познавательно32
Почемучки13
Притчи4
Работа сайта10
Разное10
Сделай сам10
С праздником16
Страшно жить10
Творчество41
Тесты14
Фото4
Хобби2
Юмор105
Логические задачи → Восстановить формулу по ряду цифр
25 мая 2010 | Добавил: Serge
Друзья, как можно восстановить формулу по ряду цифр? Мучал эксель, он не дает приемлемого результата. Может какие-то аналитические способы есть? Пример:
Хотите регулярно получать новые задачи и познавательные топики? Подпишитесь на рассылку
|
Случайное:
Обсуждения:
Подсолнух → Логические задачи → Физика конца света
Ogra → Познавательно → Теория разбитых окон
Virtus → Логические задачи → Нечестная монета
atlakatl → Логические задачи → Четыре карты
Virtus → Логические задачи → Кто есть кто
gredavik → Логические задачи → Двузначное число
gredavik → Игры → Кубик рубика
gredavik → Логические задачи → Число 1984
Alex → Логические задачи → 3 сундука
Карта сайта:
|
25 мая 2010 в 20:56
Serge, поверь мне, Эксель для научных расчетов подходит не больше чем запорожец для формулы-1.
Есть прекрасная прога Origin http://x-soft.tomsk.ru/index.php?newsid=1146380555
Я сам сейчас работаю с массивами для которых надо найти более-менее пригодную аппроксимацию, и она мне килограмм 20 нервных клеток сэкономила.
А эксель даже свои функции не может реализовать, если его аппроксимирующую зависимость наложить на точки, совпадения практически не будет.
25 мая 2010 в 21:08
zxsa, спасибо за ссылочку! Пойду развлекаться :)
30 мая 2010 в 17:15
Ага, в орижине нужно 2 минуты
Polynomial Regression for Data1_B:
Y = A + B1*X + B2*X^2 + B3*X^3 + B4*X^4
Parameter Value Error
------------------------------------------------------------
A 191,2896 43,8969
B1 -46,27095 27,43757
B2 48,04534 5,1358
B3 -3,64356 0,36329
B4 0,18868 0,00859
2 июня 2010 в 20:59
Это ж задача численных методов, на 3-4 курсе проходят.
3 июня 2010 в 00:10
arTk? не спорю, но на бумажке считать замучаешься, тем более аппроксимацию гауссианой, больцианой или еще чем похуже. А здесь просто, быстро и надежно.
3 июня 2010 в 00:54
arTk, оно так, но задачи немного разные :) Нужно с минимумом затрат времени найти формулу которую можно использовать для аппроксимации.
5 июня 2010 в 18:04
тык задача в том чтобы интерполировать одну последовательность или в том чтобы написать код, инетерполирующий последовательности?
6 июня 2010 в 01:11
Интерполировать разные последовательности, но код писать не нужно, это излишний расход сил. Решение в виде ориджина устраивает полностью.
11 июня 2010 в 23:41
1. забиваешь в Excel данные в два столбца
2. выделяешь оба столбца и вызываешь мастер построения диаграмм
3. строишь точечную диаграмму
4. на диаграмме щелкаешь правой кнопкой по точкам графика и говоришь "Добавить линию тренда"
5. выбираешь желаемый тип аппроксимации, например полиномиальный
6. на вкладке "Параметры" устанавливаешь галочку "Показывать уравнение на графике"
7. жмешь Ок и изучаешь результат
PS: те, кто хаит Excel, просто не умеют им пользоваться.
12 июня 2010 в 13:28
walker, какая формула у вас получилась в Excel?
12 июня 2010 в 14:13
walker, я этим занимаюсь профессионально, так что не надо мне рассказывать кто что может, кто что не может. Экселевский тренд не годится ни на грамм для полноценной работы, это прога чисто бухгалтерская, считать сальдо-бульдо и не более. Он не может даже пересчитать шкалу абцисс на равномерный ряд, не то что нормально аппроксимацию построить.
Для продолжения спора (если захотите)
1 15
5 26
8 31
13 44
25 72
Сделайте из этого массива нормальный график с осью абцисс 0--20--40--60 в экселе (ориджин это делает на автомате, как и все нормальные рабочие пакеты). Я про тренды даже не говорю. Сможете - тогда и поговорим.
12 июня 2010 в 14:15
Ось 0--5--10--15--20--25, то есть.
28 июня 2010 в 12:35
Serge, неужели у вас нет под рукой Excel-я чтобы проверить?
Повторили бы описанные действия и сами получили бы
следующие результаты:
степень полинома / уравнение
2: y = 74,085x^2 - 669,14x + 1778,4
3: y = 4,2811x^3 - 60,771x^2 + 491,48x - 496,12
4: y = 0,1887x^4 - 3,6436x^3 + 48,045x^2 - 46,271x + 191,29
5: y = 0,0068x^5 - 0,1667x^4 + 3,0805x^3 - 7,0389x^2 + 136,22x + 20,029
или экспоненциальная модель (для этих данных - плохой вариант аппрокксимации)
y = 224,EXP(0,2343x)
или степенная модель (этот вариант ещё хуже экспоненциальной модели)
y = 75,347x^1,6778
zxsa, я не понял в чём проблема?
Забейте ваши числа в два столбца, выделите их
и постройте точечную диаграмму - Excel на автомате
сделает вам график, у которого по оси абсцис будут стоять
ваши числа 0 - 5 - 10 - 20 - 25.
zxsa, подозреваю, что вы строите линейную диаграмму,
а надо - точечную.
PS: ещё раз повторю, что Excel - это замечательный пакет,
в котором многое можно сделать стандартными средствами,
а при необходимости можно расширить его возможности,
написав расширения на VBA.
PSS: конечно, он не попрёт против специальных пакетов,
типа Statistica, R, MatLab и т.д. Но они и требования
к пользователю предъявляют соответствующие.
28 июня 2010 в 13:20
walker, нет :) Использую опен офис, а в нем апроксимация очень убогая.
Ну и исходя из условия задачи представление в виде полинома, конечно, верно но мне не подходит.
Это не единственный рад цифр, мне нужно понять общую зависимость во всех последовательностях.
28 июня 2010 в 18:21
walker, свои претензии к экселю частично снимаю и приношу извинения за резкость. Но повторюсь: для полноценной обработки узкопрофильные пакеты подходят лучше.
28 июня 2010 в 18:38
Из 2-го члена ряда вычитаем 1-й, из 3-го – 4-й и т.д., Получается 2-й ряд. Тоже самое делаем со 2-м и 3-м рядами. 3-й и 4-й ряды отображаем на точечной диаграмме в Excel. Явно видны две независимые кривые. Т.е. исходный ряд – смесь двух функций. Искать формулу для него в классе элементарных функций бессмысленно.
Из исходного ряда строим два новых: 1-й, 3-й, 5-й члены и т.д.; 2-й, 4-й, 6-й члены и т.д. Находим разность между соседними членами:
1-й ряд:
156
433 277
830 397
1402 572
2226 824
3413 1187
5121 1708
7582 2461
11125 3543
16227 5102
2-й ряд:
282
613 331
1090 477
1776 686
2765 989
4189 1424
6240 2051
9192 2952
13444 4252
19567 6123
Правые колонки отлично аппроксимируются экспонентами.
Ряды, обычно, не валятся с неба. История их появления лучше всего расскажет о способах аппроксимации. А вот в нестандартных случаях типа сабжевого и самый мощный аналитический пакет не поможет.
29 июня 2010 в 16:20
Всё верно, не помогут, но разные способы аппроксимации могут подтолкнуть к верному решению.