Kodomo

Пользователь

Учебная страница курса биоинформатики,
год поступления 2014

Файлы для занятия

ChickWeight.tab

sleep.paired.tab

anaesthetic.reaction.time.tab

StudentTest.csv

Факторы

Создать

f <- factor(c("yes", "yes", "no", "yes", "no"))

Возможные значения

levels(f) 

Количество каждого из значений

table(f) 

Добавим новое значение

levels(f) <- c(levels(f), "maybe")
table(f) 

Порядок уровней при создании фактора

f <- factor(c("yes", "yes", "no", "yes", "no"), levels = c("yes", "no")) 

Разбиение вектора по фактору

boxplot(mtcars$mpg ~ mtcars$cyl)

Работа с файлами

Узнать рабочую директорию

getwd() 

Установить рабочую директорию (путь относительно текущей директории)

setwd("Week3")

Список файлов директории

dir()

Прочитать файл

 students <- read.table("FBBRStudents.tab",sep="\t", header=T) 

Узнать, какой тип имеют столбцы dataframe

str(students)

Задать тип столбцов при чтении

students<-read.table("FBBRStudents.tab",sep="\t",header=T, colClasses=c("character","factor","factor","integer"))
str(students)

Записать в файл в формате csv

write.csv(students, "FBBRStudents.csv")

Прочитать файл построчно в вектор (можно указать необходимое количество строк)

lines<-readLines("FBBRStudents.tab",3)

Сохраняем R объект в файл .RData

save(students, lines, file="Students.RData")

Удаляем все объекты из рабочего пространства

rm(list=ls()) 
ls()

Читаем объект из файла

load("Students.RData") 
ls()

Элементарная статистика

Задача о зависимости веса цыплят от рациона питания

chick.w <- read.table("ChickWeight.tab", header=T)

Графический анализ выборок

par(mar=c(4,4,2,1),mfrow=c(1,2))
w.diet.2 <- chick.w[chick.w$Diet==2,"weight"]
w.diet.3 <- chick.w[chick.w$Diet==3,"weight"]
qqnorm(w.diet.3, ylab="Diet 3 sample quantiles")
qqline(w.diet.3,col="red",lwd=2)
qqplot(w.diet.2,w.diet.3,xlab="Diet 2 sample quantiles", ylab="Diet 3 sample quantiles", main="Samples QQ Plot")
abline(0,1,col="blue",lwd=2)

Сравнение эмпирического распределения с теоретическим:

ks.test(w.diet.3,"pnorm",mean(w.diet.3),sd(w.diet.3))

Сравнение распределений двух выборок:

ks.test(w.diet.2,w.diet.3) 

Работа с объектом htest

diet3.ks <- ks.test(w.diet.2,w.diet.3) 
class(diet3.ks) 
names(diet3.ks)
diet3.ks$p.value

Тест Shapiro-Wilk (на нормальность):

shapiro.test(w.diet.3) 

t-test для независимых выборок

chick.test <- t.test(w.diet.2, w.diet.3, alternative="less")

Альтернативный синтаксис

chick.test<-t.test(chick.w$weight~chick.w$Diet, alternative="less")

Задача про длительность с на в зависимости от препарата.

sleep.paired<-read.table("sleep.paired.tab",header=T)

Парный t-test:

sleep.test <- t.test(sleep.paired$Drug1,
+ sleep.paired$Drug2, paired=T, alternative="less")

Задача про влияние анестетика на время реакции пациентов на световой раздражитель

rt<-read.table("anaesthetic.reaction.time.tab",sep="\t", header=T)

U-критерий Манна-Уитни

wilcox.test(rt$Mean.RT~rt$Group, alternative="greater") 

Задача про ответы студентов на вопросы теста. !!!!

test <- read.csv("StudentTest.csv")

Парный тест

wilcox.test(test$Q1, test$Q2, paired=T, alternative="greater", exact=F)