1 2 3 4 5 6 7 8 9 | install.packages("randomForest") //패키지 설치
library(randomForest) // 메모리 로딩 #NA : 값이 없음 NULL :초기화 되지 않은 상태 is.na(four) //NA가 있으면 TURE is.null(four) //null이 있으면 TURE TURE & TURE // &하나로 불린 엔드연산 TURE | TURE // |하나로 불린 오어연산 #factor 범주형/카테고리 / 명목형 : 크기비교 불가 ,순서형 : 크기비교 가능 명목형 : 좌파/우파 순서형 : 소 , 중, 대 같은 순서를 줄수 있는 의미의 카테고리 수치형: 카테고리로 나눌수 없는자료형 gender<-factor("f", c("m","f")) // 카테고리에 m과 f가 있고 f를 할당하겠다. c() // 변수를 벡터로 묶어준다. //range 지정 C(1:5) 1~5까지 //seq(1,5)와 동일 또는 seq(1,5,by=3) 출력 1 4 mean(x) // x안에 있는 평균을 리턴. max(x) // "" 최대값을 리턴 min(x) // "" 최소값을 리턴 paste(<strs>, collapse=<delimitor>) //벡터안에있는 문자열을 결합후 리턴 install.packages("ggplot2") library(ggplot2) qplot(x) //벡터 x의 요소를 시각화. 빈도그래프(막대그래프) 관측치 : 행 , 관측값: 열 str(mpg) // structure check qplot(data=mpg, x=hwy) //데이터 mpg , x축 hwy 관측값 qplot(data=mpg, x=drv,y=hwy) //x, y축 명시 qplot(data=mpg, x=drv,y=hwy, geom="line") //선그래프로 표시 geometry qplot(data=mpg, x=drv,y=hwy, geom="boxplot") //이상치 확인 Quantile = 4분위수 // 하위 25% 1분위수, 중위수 50%, 75% 3분위수 , 100% 4분위수 Q1 = 25% , Q3 - Q1 = IQR(InterQ range) 박스플롯의 윗선은 IQR*1.5 + Q1 아래선은 IQR*1.5 -Q1 qplot(data=mpg, x=drv,y=hwy, geom="boxplot",colour=drv) df=data.frame(eng,math,row.names=Nstudent) df class(df) df3=data.frame(eng,math,kor,row.names = Nstudent)
df3
mean(df3$eng) //프레임 안에 있는 속성은 $를 통해 접근 가능하다
//////////벡터와 데이터 프레임을 바로 생성 ///////// df4<-data.frame( eng=c(90,100,70,60), math=c(50,60,100,9), kor=c(1,1,2,3) ) df4 ///////////////////////////////////////////////// install.packages("readxl") // xlsl 읽기 library(readxl) df <- read_excel("Data/excel_exam.xlsx") df2 <- read_excel("Data/excel_exam_novar.xlsx",col_names = F) //열 이름 주기
df2
df3 <- read_excel("Data/excel_exam_sheet.xlsx",sheet=3) // 시트 번호 추가 df3 df4 <- read.csv("Data/csv_exam.csv") df4 write.csv(df5,file="Data/mydf.csv") // save csv file save(df5, file="Data/mydf_s.rda") // compress df and save as rda file load("Data/mydf_s.rda") // save 할때 사용한 변수명 df5를 그대로 사용해야 한다. rm(df5) //변수 삭제 str(df5) // 정보 출력 dim(exam) // raw 와 col의 갯수만 출력 dimension head(exam, 10) // 상위 10개만 출력 View(exam) // 데이터 프레임을 그래픽출력 summary(exam) //"" 기술 통계 출력 median(a) // 중위수 출력 mpg<-as.data.frame(mpg) //////////필수 View dim str class summary //////////// 컬럼 이름 바꾸기 /////////// install.packages("dplyr")
library(dplyr)
df_new<-rename(df2, v1=var1) // var1 컬럼 이름을 v1로
df_new
/////////////////////////////////////// 파생변수(컬럼 조작) mydf <- data.frame(eng=c(70,90,80), mat=c(50,60,70)) mydf$sum<-mydf$eng + mydf$mat //sum 컬럼 생성 mydf hist(mpg$tot) mpg$hl <- ifelse(mpg$tot >= 23, "gr_h", "gr_l") // 파생변수 만듬과 동시에 삼항연산자 적용 mpg$grade <- ifelse(mpg$tot >= 28, "A", ifelse(mpg$tot >= 20, "B", "C")) //중복 적용 table(mpg$hl) //빈도표 출력 명목형 관련 사용처 많음. table(mpg$grade)
qplot(mpg$grade)
str(mpg)
summary(mpg)
////////////////////////////////////////////////////////// %% 필터 library(dplyr) exam %>% filter(class==3) // 파이프 라인 사용 exam %>% filter(class!=3 & science >= 50) //중복 조건 exam %>% filter(class %in% c(1,4,5)) ///포함 되는 정보 출력 rm(mpg$eng) // 컬럼삭제 !meanCty_vok =mean((mpg %>% filter(manufacturer == "volkswagen"))$cty) // 그룹 평균 exam %>% select(science) // 컬럼 추출 exam %>% select(science,math, class) //복수 컬럼 추출 exam %>% select(-science) // 컬럼 제외 출력 -를 붙인다 !!!!!!! %>% : dplyr 패키지에서 제공하는 연산자이다 !!!!!! # 다중 조건 temp = exam %>%
filter(class == 3) %>%
select(math) %>%
head(2)
//////////////////////////정렬 /////////////////////////// !!!! TAP 키로 자동완성!! !!!! exam %>% arrange(math) //오름차순 exam %>% arrange(desc(math)) // 내림차순 exam %>% arrange(math, english) //math로 오름차순 정렬 후 english로 오름차순 정렬 exam %>% arrange(class, english) // 반별 영어점수 오름차순 | cs |
'딥러닝 모델 설계 > R STUDIO' 카테고리의 다른 글
라이브러리, ggplot x축 분할, Flip, Join, excel, discrete, fill, position (0) | 2019.05.20 |
---|---|
library, wordcloud, str_split, paste, nchar, str_replace, ggplot , wefare (0) | 2019.05.17 |
R <---> Mysql 연동 (0) | 2019.05.16 |
rbind, apply, sample,split, subset, names, merge (0) | 2019.05.16 |
head, view , summary, dim. summarize, rename, mutate, group_by (0) | 2019.05.15 |