Програмный пакет для определения среднего значения

rijiy2009

Есть набор нерегулярных данных (x,y,z) требуется определить среднее. Какие программные могут его расчитывать? Также интересует возможность определения среднего для слоя от z1 до z2. Кустарные программы в данном случае не нужны, они уже есть

k11122nu

ехель, если я правильно понял проблему

rijiy2009

Нет эксель не то, для каждого измерения необходимо учитывать вес в зависимости от пространственного распределения.

k11122nu

во-первых, это не упоминалось. во-вторых, ехель и это может.

rijiy2009

ехель и это может
С этого момента поподробнее

k11122nu

ну вводишь формулу для веса, растягиваешь вдоль столбца (столбцов) с точками, умножаешь вес на саму величину, суммируешь и нормализуешь.

rijiy2009

вся проблема в вводе формулы для веса. Его и нужно определить как площадь до середины растояния до соседних измерений во все стороны.

k11122nu

я не понял, но если ты суммеешь сформулировать алгоритм построения этого веса, и если он более или менее локален, то в ехеле его тоже можно сделать.
Ты попросил усреднить. Потом выяснилось, что усреднять надо с определенным весом. Теперь оказывается, что этот вес как-то хитро считается. Как думаешь, пока не конкретизируешь задачу, кто-нибудь тебе сможет определенно сообщить, что тот или иной пакет с ней справляется?

rijiy2009

Алгоритм то я сумею сформулировать. Вес каждого измерения равен отношению площади ограниченной прямыми на половине расстояний до соседних измерений к общей площади. В экселе вся трудность именно в поиске соседних точек.
Ты попросил усреднить. Потом выяснилось, что усреднять надо с определенным весом.

Нерегулярность исходных данных как условие в первом посте имхо предусматривало и вес и его хитрый расчет. Так бы я спрашивал как можно среднее арифметическое расчитать
то-нибудь тебе сможет определенно сообщить, что тот или иной пакет с ней справляется?

Надеюсь на это

MerKish

При такой постановке вопроса этот пакет называется Visual Studio

vvasilevskiy

Я все подобное в матлабе делаю.

rijiy2009

Да в том то и дело, что хотел от поделок отойти (это и про VS и Matlab)

DarkDimazzz

Вес каждого измерения равен отношению площади ограниченной прямыми на половине расстояний до соседних измерений к общей площади
Пардон, а по-русски сформулировать? Подозреваю, что это и в Excel-е можно сделать, только сначала хотелось бы понять, а что это такое. Кстати, что такое "нерегулярность" тоже совершенно непонятно, поэтому никто и не подумал о том, что нужно взвешенное среднее.

rijiy2009

Вот лучше нарисую. Отношение площади прямоугольника к общей есть вес каждого измерения

Под нерегулярностью я имел в виду противоположность регулярной сетке, где все действительно сводится к алгоритму midori. Хотя на самом деле приводя задачу к моим данным она упростится, т.к. они по оси х идут через неравные интервалы, как на рисунке

a101

То есть тебе не нужна сумма весов равная 1? Если я "правильно" понял твое "определение" "веса", то у тебя прямоугольники не покрывают всю картинку без наложений.

a101

Возьми какой-нить прямоугольник (не квадрат поверни его на некоторый угол (не кратный 90 градусов). И нарисуй нам, пожалуйста, веса по твоему определению. Я если правильно пониммаю твое "определение веса", то веса у соседних вершин прямоугольника будут разные.

a101

Заодно решение. Если считать, что точек много и ты "очень хорошо" смог построить свои прямоугольники - то твое среднее значение по каждой координате равно (точнее очень близко, прямоугольники просто можно построить разными способами) просто полусумме минимального и максимального значения в ней. Это Exel очень хорошо умеет считать :)

rijiy2009

То есть тебе не нужна сумма весов равная 1?
Нужна
прямоугольники не покрывают всю картинку без наложений
Покрывают. Продолжи построение на картинке
поверни его на некоторый угол (не кратный 90 градусов).
Не понял что ты хочешь, а главное зачем
просто полусумме минимального и максимального значения в ней.
Ты прав насчет полусуммы, но одно маленькое но. Допустим у меня точки упорядочены по возрастанию у. Как найти автоматом в экселе соседние точки по х? Данных в отличие от картинки, значительно больше

DarkDimazzz

А что значит "соседние"?

rijiy2009

по у точка выше, точка ниже
по х все соседние измерения на одной линии, их две - справа и слева

DarkDimazzz

Непонятно. Можешь сформулировать критерий того, что точки (xi,yi) и (xj,yj) являются соседними?

a101






Поверни его на некоторый угол (не кратный 90 градусов). И нарисуй картинку.
Не понял что ты хочешь, а главное зачем
Просто сделай это. И ты поймешь, что твои "веса" у соседних вершин прямоугольника будут разные. Заодно поймешь, что не рисуются твоим методом прямоугольники у вершин так, что они покрывают без наложений весь прямоугольник.
Ты прав насчет полусуммы, но одно маленькое но. Допустим у меня точки упорядочены по возрастанию у. Как найти автоматом в экселе соседние точки по х? Данных в отличие от картинки, значительно больше

Тебе это не нужно. Exel отлично считается по каждой координате минимально и максимальное значение. Возьми просто их полусумму. Думаю это будет примерно та точка, которую ты хочешь.

rijiy2009

(xi,yi) и (xj,yj) являются соседними если растояние от xi до xj меньше чем до других x. Причем в обе стороны от xi. по оси y (xi,yi) соседние (xi,yi+1) и (xi,yi-1) если они есть

rijiy2009

Просто сделай это. И ты поймешь, что твои "веса" у соседних вершин прямоугольника будут разные. Заодно поймешь, что не рисуются твоим методом прямоугольники у вершин так, что они покрывают без наложений весь прямоугольник.

Извини, все равно не понял что ты хотел сказать. Веса не у вершин прямоугольника, а у черных точек где есть значения.
Возьми просто их полусумму. Думаю это будет примерно та точка, которую ты хочешь
Я хочу не точку со средними х и y, а среднее значение z

a101

Если у тебя есть четыре точки с координатами (0, 2 (2, 6 (10, 0 (12, 4) (которые образуются прямоугольник то твои прямоугольники по твоему поределнию будут
(0, 1) - (1, 3) S = 2
(1, 5) - (6, 6) S = 5
(6, 0) - (11, 1) S = 5
(11, 3) - (12, 5) S = 2

То есть общая их площадь равна 14. А площадь большого прямоугольника - 12 * 6 = 72. Более чем в 5 раз разница. Именно поэтому все тебе говорят, что определение у тебя кривое. Ибо на твоей картинке ты должен был "по своему определению" нарисовать очень маленькие прямоугольники.

a101



Я хочу не точку со средними х и y, а среднее значение z
Ура, я понял, что тебе нужно. Осталось только понять, как мы ставим веса.
Такое определение тебя устраивает:



Вес точки (x_i, y_i) пропорционален площади той области точек, для которой точка (x_i, y_i) является ближайшей (с точки зрения манхэтоновского расстояния).
?

rijiy2009

Таких четырех точек быть не может! x координата одинакова у большого количества точек, я об этом выше писал

rijiy2009

Вес точки (x_i, y_i) пропорционален площади той области точек
Вес пропорционален не области точек, а просто области вокруг точки (те самые прямоугольники).

a101



Таких четырех точек быть не может! x координата одинакова у большого количества точек, я об этом выше писал
1. Пересмотрел тему. Не заметил, где ты это писал.
2. Я хотел примером показать, что получаются прямоугольники совсем не те, что ты ожидаешь. Если считать что у тебя просто решетка но с разными интервалами вдоль осей - это одно. Если у тебя не решетка - то прямоугольники просто не делают покрытие.
3. Добавь в свое построение прямоугольника, что мы ищем ближайшие коордианты не равные текущей.
4. Попробуй с самого начала писать нормально задачу... а не чтобы каждые 10 сообщений люди узнавали что-то новое о ней. Возможно если сразу все аккуратно написать - больше шанс что кто-то поможет. Тут очень мало телепатов которые умееть понимать то, о чем не написано.

PS
Если утебя все таки полная решентка - то в exel это можно решить, как я понимаю.

a101



Вес пропорционален не области точек, а просто области вокруг точки (те самые прямоугольники).
Я просто предположил, как ты мог бы расширить свое "определение весов" через прямоугольники, чтобы твои фигуры (площадь которых ты используешь как вес) действительно покрывали наш прямоугольник в котором мы работаем когда точки произвольного расположения.

a101



x координата одинакова у большого количества точек, я об этом выше писал
Для координаты Y это не отсносится? Она распределена свободна?

a101



по у точка выше, точка ниже
по х все соседние измерения на одной линии, их две - справа и слева
Если я правильно понял что тебе нужно...
Можно в exel упорядочить все точки по x, а при равных по y. Тогда для каждой точки легко посчитать твой dy (так как точка сверху и снизу - это соседние). Аналогично можно задать формулами (двигаясь вверх и вниз) найти ближайшую точку с отличающейся координатой х. Так ты получишь для каждой точки свой прямоугольник. Через него строишь вес и суммируешь. Вроде все делается в exel. Главное с границами все аккуратно сделать.
Оставить комментарий
Имя или ник:
Комментарий: