// google adsense
반응형

데이터가 주어졌을 때 가장 먼저 해야하는 것은 데이터의 구조를 파악하는 것이다.

이번에는 데이터를 파악하는데 도움이 되는 함수를 알아보자.


# csv를 exam에 할당
exam <- read.csv("csv_exam.csv")

# 데이터의 앞부분 6행까지
head(exam)
# 앞부분 10행까지
head(exam,10)

# 뒷부분 6행
tail(exam)
# 뒷부분 10행까지
tail(exam,10)

#데이터 뷰어창에서 데이터 확인
View(exam)

#데이터 행, 열 확인
dim(exam)

#데이터 속성 확인
str(exam)

#데이터 요약 통계량 확인
summary(exam)


summary에서 확인 할 수 있는 통계량은 다음과 같다.


출력값통계량설명
Min최솟값(Minimum)가장 작은 값
1st Qu1사분위수(1st Quantile)하위 25% 지점에 위치하는 값
Median중앙값(Median)중앙에 위치하는 값
Mean평균(Mean)모든 값을 더해 값의 개수로 나눈 값
3rd Qu3사분위수(3rd Quantile)하위 75% 지점에 위치하는 값
Max최댓값(Maximum)가장 큰 값


Median과 Mean 값은 데이터 보정에 사용되는 중요한 값이다.




데이터의 특징을 파악했다면, 이제 알아보기 쉽게 변수명을 바꾸는 작업을 해보자.


#df_raw를 df_new로 백업
df_new <- df_raw

# 변수 이름 변경
df_new <- rename(df_new,v2=var2)

# var_sum 이름의 파생 변수 생성
df_new$var_sum <- df_new$var1 + df_new$v2

# 조건문을 활용 파생 변수 생성
df_new$exam <- ifelse(df_new$var_sum >=5,"pass","fail")


빈도별로 데이터를 파악, 시각화 해보자.


# 등급 빈도표
# 표 생성
table(df_new$var1)

# 등급 빈도 막대 그래프
# 막대 그래프 생성
library(ggplot2)
qplot(df_new$var1)


반응형

'Computer Science > R' 카테고리의 다른 글

R 데이터 프레임 (data frame)  (0) 2018.07.03
R 패키지 사용하기  (0) 2018.07.03
R 변수 할당  (0) 2018.07.03
데이터 분석 기초  (1) 2018.07.03
반응형

데이터 프레임은 가장 많이 사용하는 데이터 형태로, 행과 열로 구성된 사각형 모양의 표로 되어있다.

성별연령학점연봉
남자263.82700
여자424.24000
남자352.63500


위의 표는 3행 4열로 구성된 데이터 프레임이다.

먼저 데이터 분석을 해보자.

이 데이터의 양은 3개이며(3행),

분석할 수 있는 변수는 4개이다(4열).

성별은 범주형 데이터 이며,

연령, 학점, 연봉은 연속형 데이터이다.


그럼 지금부터 R에서 데이터 프레임을 만들어보자.

#각 변수 생성
sex <- c("남", "여","남")
age <- c(26, 42, 35)
grade <- c(3.8, 4.2, 2.6)
pay <- c(2700, 4000, 3500)

#앞서 만든 변수로 dataframe을 만들어 df_student에 할당
df_student <- data.frame(sex,age,grade,pay)

#다음과 같은 형태도 가능
df_student <- data.frame(sex = c("남", "여","남"),
                         age = c(26, 42, 35),
                         grade = c(3.8, 4.2, 2.6),
                         pay = c(2700, 4000, 3500))

#mean 함수를 이용해 df_student의 pay평균 계산
mean(df_student$pay)

다음은 엑셀 파일에서 데이터를 읽어와 데이터 프레임을 만들어 보자.

#엑셀 파일로 데이터 프레임 만들수도 있다
install.packages("readxl")
library(readxl)

#read_excel을 통해 파일을 읽어 온 후 df_test에 할당한다
df_test <- read_excel("test.xlsx")

#엑셀의 첫번째 행이 변수명이 아니라면 read_excel에 col_names = F를 붙여준다
#F는 False의 약자이다.
df_test <- read_excel("test.xlsx", col_names = F)
#이러면 첫번째 행은 데이터로 인식하며, 변수명들은 X__숫자로 자동 지정된다.

#여러개 시트일 경우 sheet= #을 지정해준다
df_test <- read_excel("test.xlsx", sheet = 1)

다음은 csv 파일에서 데이터를 읽어와 데이터 프레임을 만들어 보자.

#csv 파일 불러오기
df_test <- read.csv("test.csv")
#첫번째 행이 변수명 아닐 경우
df_test <- read.csv("test.csv", header = F)
#문자가 들어있을 경우 stringsAsFactors=F 옵션 추가
df_test <- read.csv("test.csv", stringsAsFactors = F)

다음은 데이터 프레임을 저장해보자

#데이터 프레임을 csv 파일로 저장
write.csv(df_test, file = "df_test.csv")

#데이터 프레임을 rdata로 저장
save(df_test, file = "df_test.rda")

#rda 파일 불러오기
load("df_test.rda")

#read_excel 과 read.csv 할 경우 변수명에 데이터 프레임을 할당해줄것.
#rda는 파일명이 곧 데이터프레임의 변수명이 된다.


반응형

'Computer Science > R' 카테고리의 다른 글

R 데이터 파악  (0) 2018.07.03
R 패키지 사용하기  (0) 2018.07.03
R 변수 할당  (0) 2018.07.03
데이터 분석 기초  (1) 2018.07.03
반응형

R 에서는 다양한 기능을 하는 함수를 이용할 수 있다.

이 함수를 이용하려면 먼저 함수가 들어있는 패키지를 설치하고 불러들여야 한다.

데이터를 그래프로 표현하는 작업을 할 때 가장 많이 사용되는 ggplot2 패키지를 설치하자.

install.packages("ggplot2")

설치가 끝난 후 ggplot2 패키지를 사용하려면

library(ggplot2)

를 통해 ggplot2 패키지를 로드해준다.


ggplot2의 함수 gplot을 통해 간단한 빈도 막대 그래프를 만들어보자

#범주형 데이터 생성
x <- c("a","a","c","c","f")
#빈도 막대 그래프 출력
qplot(x)

qplot에는 mpg(Mile Per Gallon)라는 자동차 234종의 연비 관련 정보가 예제 데이터로 있다.

이 데이터를 이용해 qplot의 기능을 테스트 해보자.

#x축 cty
qplot(data = mpg, x = hwy)
#x축 drv y축 hwy
qplot(data = mpg, x = drv, y = hwy)
#x축 drv y축 hwy, 선 그래프
qplot(data = mpg, x = drv, y = hwy, geom = "line")
#x축 drv y축 hwy, 상자 그림
qplot(data = mpg, x = drv, y = hwy, geom = "boxplot")
#x축 drv y축 hwy, 상자 그림, drv별 색 표현
qplot(data = mpg, x = drv, y = hwy, geom = "boxplot", colour = drv)

도움말은

?qplot

을 통해 확인 할 수 있다.

반응형

'Computer Science > R' 카테고리의 다른 글

R 데이터 파악  (0) 2018.07.03
R 데이터 프레임 (data frame)  (0) 2018.07.03
R 변수 할당  (0) 2018.07.03
데이터 분석 기초  (1) 2018.07.03
반응형
#변수 할당
b <- 2

#변수 계산
b*3

#변수에 여러 개의 값 대입
#c() 함수는 combine의 머리글자
variable1 <- c(1,2,3,4,5)

#1-5까지 연속값으로 변수에 대입
variable2 <- c(1:5)
variable2 <- seq(1,5)

#간격 두고 연속값 대입
variable2 <- seq(1,10,by=2)
## 1 3 5 7 9

#변수끼리 연산 가능
variable2+2
## 3 5 7 9 11
variable1+variable2
## 2 5 8 11 14


#문자열 변수
str1 <- "a"
str2 <- "text"

#문자열 합치기
str1+str2
## a text

#문자열 여러개 변수에 할당
str <- c("a","b","c")
## "a" "b" "c"

# str1+2 (x) 문자로 된 변수는 연산 불가


반응형

'Computer Science > R' 카테고리의 다른 글

R 데이터 파악  (0) 2018.07.03
R 데이터 프레임 (data frame)  (0) 2018.07.03
R 패키지 사용하기  (0) 2018.07.03
데이터 분석 기초  (1) 2018.07.03
반응형
PassengerIdSurvivedPclassNameSexAgeSibSpParch
103Braund, Mr. Owen Harrismale2210
211

Cumings, Mrs. John Bradley

female3810
313Heikkinen, Miss. Lainafemale2600
411

Futrelle, Mrs. Jacques Heath

female3510
503Allen, Mr. William Henrymale3500
603Moran, Mr. Jamesmale 00
701McCarthy, Mr. Timothy Jmale5400
803Palsson, Master. Gosta Leonardmale231
913

Johnson, Mrs. Oscar W

female2702
1012Nasser, Mrs. Nicholas (Adele Achem)female1410


위 데이터는 타이타닉 탑승자들 데이터이다.

이 데이터를 처음 보았을 때 무엇을 먼저 분석해야 할까?


첫번째, 행의 갯수.

두번째로는 열의 갯수를 파악한다.


행은 데이터의 양을 나타낸다.

열은 데이터를 나타내는 특성이다.

열은 변수라고도 하며, 데이터 분석의 대상이 된다.

이 특성으로 다른 변수들간에 어떤 관계가 있는지, 어떤 차이가 있는지 분석하여 의사결정의 도구로 삼는다.


하지만 이 열 중에서도 하나의 값으로만 고정되어 있는 경우가 있다.

이 값을 ‘상수’ 라고하며 이 데이터는 한개의 값으로 고정되어 있기때문에 분석할 가치가 없다.


변수는 또다시 범주형, 연속형 데이터로 나뉜다.

범주형 데이터는 정해진 몇개의 범위로 데이터를 분류할 수 있지만,

연속형은 그렇게 나누기 힘든, 정수로 된 데이터이다.

범주형 데이터는 주로 빈도, 교차 분석에 사용되고,

연속형 데이터는 최대값(max), 최소값(min), 평균(mean) 등으로 데이터를 분석한다.


정리하자면 기본적으로

  1. 행의 갯수
  2. 열의 갯수
  3. 범주형 데이터 1. 빈도분석 1. 교차분석
  4. 연속형 데이터 1. min max mean


순으로 분석한다.

반응형

'Computer Science > R' 카테고리의 다른 글

R 데이터 파악  (0) 2018.07.03
R 데이터 프레임 (data frame)  (0) 2018.07.03
R 패키지 사용하기  (0) 2018.07.03
R 변수 할당  (0) 2018.07.03

+ Recent posts