list.files() //현재 디렉토리 내 모든 파일 출력하기
data = read.table('파일경로',header=TRUE,sep='\t')
dim(data)
View(data)
install.packages("haven")
library(haven)
data = read_sav(file='파일명', encoding='UTF-8')
View(data)
//행, 열을 선택하기
data[1:3, 1:5] 1번째부터 3번째 행, 1번째부터 5번째 변수 보기
// 특정 컬럼 가져오기
d1 = data[ , c(3)] //3번째 열 가져오기
d2 = data[ , c(1,3,4)] //1,3,4번째 열 가져오기
d3 = data[ , c("AGE", "WT")] //컬럼 명으로 가져오기
//특정 조건을 만족하는 행만 가져오기
r1 = data[which(data$sex=="남"), ] //성별이 남자인 행만 선택
//행 합치기
dim(data1)
dim(data2)
row_hap = rbind(data1,data2) //row를 합히기
dim(row_hap)
str(data) //data 내 변수들의 속성을 확인 가능
summary(data) // 범주형 변수는 빈도값, 연속형 변수는 중앙값,평균 등의 전체적 내용 확인 가능
범주형 변수는 빈도 값을 확인
install.packages("descr")
library(descr)
categorical = freq(data$var)
View(categorical)
연속형 변수는 히스토그램으로 분포 확인
v = data$var
histo = hist(v)
head(histo) //정확한 빈도 수, 그래프의 구체적인 내용 확인 가능
//히스토그램 간격 조정하기
hist(data$var, breaks = seq(1,500,by=100) //범위:1~500, 간격:100
T 검정은 두 그룹에 대해 연속형변수의 평균을 비교하는 것이다. 따라서 반드시 두 그룹이어야한다.
data$var2 = ifelse(data$var1 < 10, 0, 1) //var1이 10 미만이면 0, 10 이상이면 1
//점들의 분포가 선과 비슷할 수록 정규성 만족하는 것
qqnorm(data$var)
qqline(data$var)
//shapiro.test 이용하여 정규성 검정. p-value가 0.05보다 커야 정규분포 만족한다는 것.
shapiro.test(data$var) // sample size가 5000 이하여야함.
var.test(y ~ x, data=mydata, conf.level=0.95) // T검정이므로 x는 두 그룹으로 나누어질 것. 두 그룹의 분산이 같은 지 확인 가능. p-value 가 0.05보다 커야 분산이 같다고 주장 가능하다.
t.test(y ~ x, data = mydata, var.equal = TRUE, conf.level = 0.95) // 등분산 검정을 통해 얻은 값으로 var.equal 값을 설정한다. T 검정이므로 x는 두 그룹이어야 한다. p-value 가 0.05 보다 작으면 두 그룹의 평균의 차이는 통계적으로 유의한 차이를 나타낸다는 의미이다.
ANOVA 검정은 서로 다른 세 그룹 이상의 평균에서 분산값을 비교하는 데 사용된다.
group = with(data, ifelse(var == 0, 0,
ifelse((var >= 1 & var <= 9), 1,2))) //with와 ifelse를 이용하여 그룹 여러 개를 만들 수 있다.
bartlett.test(y ~ x, data=mydata) // T검정이므로 x는 두 그룹으로 나누어질 것. 두 그룹의 분산이 같은 지 확인 가능. p-value 가 0.05보다 커야 분산이 같다고 주장 가능하다.
result = aov(y ~ factor(x), data=mydata) //x 변수가 숫자일 경우 factor 이용
summary(result)
// 사후검정
install.packages('agricolae')
library(agricolae)
TukeyHSD(result)
// 보기 쉽게 그래프 그려보기
plot(TukeyHSD(result))