Страница 1 из 1

конвертирование массивов разных типов в тип stat/list

Добавлено: Чт ноя 24, 2005 2:21 pm
martingal
Некоторые статистические программы, например, mean, работают только с массивами типа stat/list, просто с массивами типа list работать отказываются. Но функция convert не конвертирует массивы именно в массывы типа stat/list. Не подскажите ли, как конвертировать массивы разных типов в тип stat/list.

Добавлено: Чт ноя 24, 2005 8:41 pm
Break
Здравствуйте, коллега! :)

Почему mean не работает?

stats[describe, mean]([1,2,3,4,5]);

А для преобразований служит специальная функция:
transform

Добавлено: Пт ноя 25, 2005 1:16 pm
martingal
Спасибо,Break, за быстрый отклик.
Я имел ввиду вот какую проблему.
Массив, задаваемый явно [1,2,3,4,5], уже имеет тип stats/data, и среднее вычисляется:
> stats[describe, mean]([1,2,3,4,5]);
3
Если же этот массив получить вот так:
> for i from 1 by 1 to 5 do data[i]:=i end do:
print(data);
TABLE([1 = 1, 2 = 2, 3 = 3, 4 = 4, 5 = 5])
то команда mean не работает:
> stats[describe, mean](data);
Error, (in stats/abort) [[stats[describe,mean], requires data of type stats/data, received, data]]

Добавлено: Пт ноя 25, 2005 1:50 pm
Break
Да не за что!

А по ващему вопросу:

С типом list (списками) статистические функции работают прекрасно. Просто то, что вы привели имеет тип не list, а, скорее, table.

Для того, чтоб с такими данными работало, надо предварительно привести их к типу list.
Хотя, иногда удобнее сразу создавать переменные типа list, чтоб потом не писать лишний раз convert. :)
Наглядные примеры привожу ниже:

.
Изображение

Добавлено: Сб ноя 26, 2005 11:32 pm
martingal
Спасибо. Все работает прекрасно.