Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: подскажите по синтаксису R
Форум врачей-аспирантов > Разделы форума > Медицинская статистика
nastushka
хочу прописать такую конструкцию
DS <-vector ('numeric', length= 1)
For (i in levels(ddd$SEX))
{print(i)
{
DS <-c(summary(ddd$SLEEP [(ddd$SEX==i)==TRUE)]), ?Range?=(min(ddd$SLEEP [(ddd$SEX==i)==TRUE)]) -max(ddd$SLEEP [(ddd$SEX==i)==TRUE)]))
Print (DS)}
}

мне R выдает ошибку
Error: unexpected 'in' in "For(i in"
в R новичок, так что не все понимаю.
ddd это мой дата сет, SEX групп. пер. -пол, SLEEP нужная мне переменная. Хочу для начала хотя бы размах научиться прописывать выражением.
p2004r
Цитата(nastushka @ 30.10.2014 - 15:39) *
хочу прописать такую конструкцию


жесткое порно smile.gif

1) присоедините свой датасет в тред

2) скажите _словами_ что вы хотите получить, на R говорить пока у вас не получается frown.gif, это все увы "программирование на фортране" frown.gif

PS ну и ненадежно как то всё, я бы писал ((((ddd$SEX==i)==TRUE)==TRUE)==TRUE) как минимум!

PPS

ааа, понял smile.gif

require(plyr)
ddply(ddd, .(SEX), range, na.rm = TRUE)
nastushka
p2004r, а вы не подскажите код, как спрограммировать mean plot для anova
p2004r
Цитата(nastushka @ 31.10.2014 - 16:47) *
p2004r, а вы не подскажите код, как спрограммировать mean plot для anova


(если я правильно понял) есть целая библиотека http://cran.r-project.org/web/packages/effects/index.html
nastushka
Ещё такой вопросик:)))
сейчас тренируюсь с примерами, хочу просто просуммировать.
код
> Data<-read.csv("C:/123/ddd.csv")
> library(plyr)
> cData <- ddply(Data, c("SEX"), summarise,
+ N = length(change),
+ mean = mean(change),
+ sd = sd(change),
+ se = sd / sqrt(N) )
Error: could not find function "lenght"
что означает эта ошибка?

в оригинальном примере, все получается, а в моем нет
тут оригинальный
http://www.cookbook-r.com/Manipulating_dat...mmarizing_data/. Когда его пробовала ,все получалось.
p2004r
Цитата(nastushka @ 4.11.2014 - 20:57) *
Ещё такой вопросик:)))
сейчас тренируюсь с примерами, хочу просто просуммировать.
код
> Data<-read.csv("C:/123/ddd.csv")
> library(plyr)
> cData <- ddply(Data, c("SEX"), summarise,
+ N = length(change),
+ mean = mean(change),
+ sd = sd(change),
+ se = sd / sqrt(N) )
Error: could not find function "lenght"
что означает эта ошибка?

в оригинальном примере, все получается, а в моем нет
тут оригинальный
http://www.cookbook-r.com/Manipulating_dat...mmarizing_data/. Когда его пробовала ,все получалось.


в оригинальном примере

Код
> str(data)
'data.frame':    30 obs. of  6 variables:
$ subject  : int  1 2 3 4 5 6 7 8 9 10 ...
$ sex      : Factor w/ 2 levels "F","M": 1 1 2 1 2 1 1 2 1 2 ...
$ condition: Factor w/ 2 levels "aspirin","placebo": 2 2 1 2 1 1 1 1 2 2 ...
$ before   : num  10.1 6.3 12.4 8.1 15.2 10.9 11.6 9.5 11.5 11.9 ...
$ after    : num  6.9 4.2 6.3 6.1 9.9 7 8.5 3 9 11 ...
$ change   : num  -3.2 -2.1 -6.1 -2 -5.3 -3.9 -3.1 -6.5 -2.5 -0.9 ...


а что лежит в Data?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2025 IPS, Inc.