본문 바로가기
R

[R] 데이터 관리

by Urban communicator 2023. 9. 18.

데이터 불러오기

# 연구자가 가공한 데이터나 행렬을 내 컴퓨터에 저장하거나 불러오도록 해 보겠습니다.
# 객체 m, m1, myData를 RData로 저장하고 나중에 불러올 수 있습니다.

# RData로 저장하기

save(myData, file = "FirstData.RData")

# 'FirstData.RData'는 이전에 설정한 폴더에 저장됩니다. 

# 일단 Global Env에 있는 모든 객체들을 지우도록 하겠습니다.

rm(list=ls())


# 저장한 RData 불러오기 (전에 저장한 'FirstData.RData"를 불러오겠습니다.)

load("FirstData.RData") # Global Env.에 전에 작업한 데이터프레임과 행렬들이 보입니다.


CSV파일 저장하기

# myData의 일부를 CSV파일에 저장하도록 하겠습니다.

subset1 <- myData[1:20, ]
View(subset1)


# subset1 데이터를 dataset1.csv로 저장하기

write.csv(subset1, file = "dataset1.csv", row.names = FALSE)

#row.names = F는 열레이블을 저장하지 않는다는 의미입니다.

# 저장한 데이터를 d2로 다시 불러오겠습니다.

d2 <- read.csv("dataset1.csv", stringsAsFactors = FALSE, header = TRUE)


# 불러온 d2와 subset1을 비교해 보세요. 

str(d2)
str(subset1)


# 데이터의 요약통계

summary(d2)
summary(subset1)


# 함수의 syntax나 내용이 궁금하면 R 콘솔창에 ?와 함께 함수이름을 입력합니다.

?summary()
?sum()

 

데이터프레임 생성

d1 <- c(1,2,3,4)
d2 <- c("Kim", "Lee", "Choi", "Park")
d3 <- data.frame(cust_id=d1, last_name=d2)
d3

## d3 데이터 프레임에서 첫번째 행의 모든 구성요소를 선택 [i, ] => 데이터 프레임으로 출력됨

d3[1,]


## d3 데이터 프레임에서 첫번째 행의 모든 구성요소를 선택 [,j] => 벡터 출력

d3[,1]


## d3 데이터 프레임에서 첫번째 행, 두번째 열의 구성요소 선택 [i,j] => 벡터로 출력

d3[1,2]


## d3 데이터 프레임에서 1번째 열(변수) 구성요소 선택 [j] => 데이터 프레임으로 출력

d3[1]


## d3 데이터 프레임에서 "cust_id" 변수의 구성요소 선택 ["var_name"] => 데이터 프레임으로 출력

d3["cust_id"]


## d3 데이터 프레임에서 1번째 열(변수) 구성요소 선택 [[j]] => 벡터로 출력

a <- d3[[1]]


## d3 데이터 프레임에서 3번째 & 4번째 행, 2번째 열의 구성요소 선택 [c(i,i), j] => 벡터로 출력

d3[c(3,4),2]


2x2 행렬 만들어보기 

m1 <- matrix(c(1, 2, 3, 4), nrow = 2)
m1

# 원소값들을 순서대로 입력한 후, 행갯수 입력 하면 행렬이 만들어 집니다.

# 같은 행렬을 다른 방법으로 만들어 보겠습니다

m2 <- matrix(c(1, 2, 3, 4), ncol = 2)

# 같은 원소값들을 입력한 후, 열 갯수 입력 하면 같은 행렬이 만들어 집니다.
# m1과 비교해 보세요.

 

# 2x3 행렬 만들기

m <- matrix(c(1, 2, 3, 4, 5, 6), nrow = 2)
m

# 위와 같은 행렬을 다른 방법으로 만들어 보세요. 

m <- matrix(c(1, 2, 3, 4, 5, 6), ncol = 2)
m

# 행렬에서 특정값 추출하기

m[1, 1]

# 1이 출력됩니다.

 

m[3, 2]

# 6이 출력됩니다. 

 

# 첫번째 행 전체를 출력해 봅시다. 

m[1, ]


# 2번째 열 전체를 출력해 봅시다.

m[, 1]



외부 데이터 불러오기 

dataset_1 <- read.table("dataset_1.txt",
                        header = TRUE,  # 변수명
                        sep = ",",  # 구분자
                        stringsAsFactor = FALSE, # 문자형 데이터를 요인으로 인식할지 여부
                        na.strings = ""  # 결측값 표시
                        ) 
dataset_1
?read.table


엑셀파일 불러오기

install.packages('readxl')
library(readxl)


# read_excel() 함수를 사용해서 엑셀파일 불러오기

cust_profile <- read_excel("cust_profile.xlsx", # path
                           sheet = "cust_profile", # sheet name to read from
                           range = "B3:E8", # cell range to read from
                           col_names = TRUE, # TRUE to use the first row as column names
                           col_types = "guess", # guess the types of columns
                           na = "NA") # Character vector of strings to use for missing values
str(cust_profile)
cust_profile


분석결과를 외부 파일에 저장

## 데이터 프레임을 외부 텍스트 파일로 저장: write.table()

write.table(dataset_1, "cust_profile.txt", 
            sep = ",", 
            row.names = FALSE, 
            col.names = FALSE,
            quote = FALSE, 
            append = TRUE, 
            na = "NA"
            )

 

'R' 카테고리의 다른 글

[R] 데이터 처리  (1) 2023.10.03
[R] 데이터 처리 - 변수 변환  (0) 2023.09.22
[R] 기술 통계 및 그래프 기초  (0) 2023.09.19
[R] 기초  (0) 2023.09.17
[R] 설치하기  (0) 2023.01.12

댓글