2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 пользовательские программы для обработки статистических данн
Сообщение03.12.2013, 10:39 


15/04/10
985
г.Москва
Вопрос относится к математической статистике.
Многие знают что для обработки стат. данных есть множество пакетов
SPSS, Statistika и т.п. Целесообразно ли даже в учебных целях писать на эти темы прикладные программы?
На мой взгляд в некоторых важных вопросах это целесообразно.
Например, неплохо бы иметь программу автоматически проверяющую гипотезы о законе распределения (как простые так и сложные с выборочной оценкой параметров или нет).
Встречаются также несмотря на обилие нестандартные плотности и законы распределений. (позже дам пример ). Хотя задачи на моделирование законов распределения и вообще стат.моделирование удобнее реализовывать опять таки в матем.пакетах Матлаб, Mapple.
С учебной т.зр. такого рода задания для программистов мне кажется полезны,
т.к. наряду с искусством программирования (обработкой чтения массивов из файлов) включают элементы математики и алгоритмов работы с массивами - сортировка, группировка.
Но хотелось бы получить мнение людей работающих практически в обл. статистики

 Профиль  
                  
 
 Re: пользовательские программы для обработки статистических данн
Сообщение03.12.2013, 10:52 
Заслуженный участник
Аватара пользователя


18/01/13
12065
Казань
Я в последнее время изучаю, преподаю и использую язык R. Он широко используется в научных и других исследовательских задачах.
Язык свободно распространяемый и достаточно удобный. Конечно, как и к каждому языку, к нему надо привыкнуть. Но первичные навыки появляются быстро. Особенно, если пользоваться хорошей литературой. В этом году вышла первая русскоязычная книга по языку R, "Наглядная статистика. Используем R!", авторы - А.Б.Шипунов, Е.М.Балдин,..., всего 7 человек, специалисты в информатике, математике, биологии, физике и медицине.

Мне этот язык очень нравится, все обычные исследования (оценки параметров, проверки гипотез, регрессионный анализ и т.п.) проводятся буквально "в одно касание", скрипты составляют несколько строк: ввод, тест, вывод. Кроме того, у R мощные средства визуализации (недаром книга так называется!) и постоянно пополняемый набор возможностей.

 Профиль  
                  
 
 Re: пользовательские программы для обработки статистических данн
Сообщение03.12.2013, 11:17 


15/04/10
985
г.Москва
Но, по-моему сейчас наиболее широко распостранен SPSS.
Есть какие-то существенные аргументы в пользу отказа от SPSS и перехода на R, (в т.ч по доступности нематематикам?)

 Профиль  
                  
 
 Re: пользовательские программы для обработки статистических данн
Сообщение03.12.2013, 11:29 
Заслуженный участник
Аватара пользователя


18/01/13
12065
Казань
Я как раз математик (т.е. не программист), так что не владею широко этой информацией. Но язык R точно простой.
Вот мой доморощенный скрипт для проверки нормальности 5 методами. До этого был произведен ввод данных в таблицу dann_num
Код:
library(nortest) # вызов библиотеки проверки нормальности

sink(paste(imja,"Нормальность.txt",sep =""), append = F) # настройка файла для вывода результатов

#-----------------------------------------------------------------------------------------
#Выводим на печать заголовки таблицы
#-----------------------------------------------------------------------------------------
cat("Критические уровни значимости по разным критериям","\n")
cat("Показатель", "Пирсон", "Колмогоров","Cramer-von Mises" , "Anderson-Darling",  "Shapiro-Francia" ,"\n",sep="\t") 

for (i in (1:m))         
{ p<-rep(0,5)

pearson.test(dann_num[,i])$p.value->p[1]
lillie.test(dann_num[,i])$p.value->p[2]
cvm.test(dann_num[,i])$p.value->p[3]
ad.test(dann_num[,i])$p.value->p[4]
sf.test(dann_num[,i])$p.value->p[5]

signif(p,1)->p # округление до  значащих цифр

#-----------------------------------------------------------------------------------------
#Выводим результаты проверки (название показателя и критические уровни)
cat(names(dann_num[i]), p, sep="\t\t" )

#-----------------------------------------------------------------------------------------
#Сравниваем с уровнем значимости 5%

if (max(p) < 0.05){cat("\t","Нет нормальности")}
cat("\n") 

#-----------------------------------------------------------------------------------------
#  строим гистограмму для каждого показателя
#-----------------------------------------------------------------------------------------
png(file=paste("Гистограмма ",names(dann_num[i]),".png"), width=240, height=240)
hist(dann_num[,i],xlab="Загрязненность",ylab="Плотность",main = paste("Гистограмма для ",names(dann_num[,i])))   
dev.off()
} # конец тела цикла

#-----------------------------------------------------------------------------------------
sink()



-- 03.12.2013, 12:36 --

Результатом будет проверка по 5 критериям нескольких (в моем случае 9) показателей и автоматический вывод гистограмм в .png-файлы.

Насчет того, что лучше: кто как привык. Если SPSS уже освоен (в какой-то степени) студентами - пусть пользуются. Если нет - почему не взять R?
Там, правда, есть специфические моменты, которые не сразу усваиваются имеющими опыт программирования в "обычных" языках. Например, нелюбовь к циклам и условным операторам. Но если начинать "с нуля" - все легко преодолимо.

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

 Профиль  
                  
 
 Re: пользовательские программы для обработки статистических данн
Сообщение03.12.2013, 11:44 


28/11/11
2884
Функции R легче расширять, чем SPSS.
Как следствие, R уже давно "мощнее.

 Профиль  
                  
 
 Re: пользовательские программы для обработки статистических данн
Сообщение03.12.2013, 11:46 


15/04/10
985
г.Москва
Ознакомился здесь
http://habrahabr.ru/post/92135/
можноли и где бесплатно скачать оболочку под Win XP?

 Профиль  
                  
 
 Re: пользовательские программы для обработки статистических данн
Сообщение03.12.2013, 12:39 
Заслуженный участник
Аватара пользователя


18/01/13
12065
Казань
Когда мне дали его преподавать, практически ничего, кроме названия, не сказали. Так что гугл в руки! Прямо в википедии есть ссылка.
Ладно, не буду вредничать, посмотрите здесь: http://cran.r-project.org/

-- 03.12.2013, 13:47 --

Если вы все-таки займетесь этим языком, мы могли бы организовать здесь взаимопомощь. Пока я видела только один вопрос по этому языку. В качестве своего вклада предоставляю набор некоторых онлайн материалов. Правда, я его собирала 2 года назад для рабочей программы. Теперь, конечно, появились новые материалы.
1. Е.М.Балдин, А.Б.Шипунов, С.В.Петров, А.И.Коробейников. Анализ данных с R. Части I, II, III. http://www.inp.nsk.su/~baldin/DataAnalysis/index.html
2. Д.Мертц, Б.Хантинг. Статистическое программирование на R. Часть 1. Купаемся в изобилии статистических возможностей. http://www.ibm.com/developerworks/ru/library/l-r1/index.html
3. Д.Мертц, Б.Хантинг. Статистическое программирование на R. Часть 2. Функциональное про-граммирование и анализ данных. http://www.ibm.com/developerworks/ru/library/l-r2/index.html.
4. Д.Мертц, Б.Хантинг. Статистическое программирование на R. Часть 3. Повторное использование кода и объектное программирование. http://www.ibm.com/developerworks/ru/library/l-r3/index.html.
б) дополнительная литература
5. Научный блог Волиадиса http://voliadis.ru
6. Справочная система среды R
в) Информационно-программное обеспечение и Интернет-ресурсы
1. Сайт проекта http://www.r-project.org/
2. CRAN http://cran.r-project.org/
3. Список рассылки R-help https://stat.ethz.ch/pipermail/r-help
4. Советы по использованию R http://pj.freefaculty.org/R/Rtips.html
5. Справочные материалы http://www.statmethods.net/index.html , http://zoonek2.free.fr/UNIX/48_R/all.html
6. Поиск в материалах по R http://finzi.psych.upenn.edu/nmz.html

 Профиль  
                  
 
 Re: пользовательские программы для обработки статистических данн
Сообщение11.12.2013, 00:08 
Аватара пользователя


11/06/12
10390
стихия.вздох.мюсли
Кроме того, R можно связать с Wolfram Mathematica, что предоставляет много дополнительных плюшек.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group