본문 바로가기
PROGRAMMING/R

[R] csv파일 불러오고 살펴보기

by 안녕나는현서 2021. 7. 17.
728x90

- 외부 데이터 불러오기

# 루트 변경 (\는 인식하지 못하므로 /로 변경해서 사용)
> setwd('C:/Users/user/Desktop/R/210717')

# 현재 경로의 파일 리스트 출력
> list.files()
[1] "01_Vector.R"             "02_Data Frame.R"        
[3] "1-4호선승하차승객수.csv" "210717.Rproj"           
[5] "csv_exam.csv"           

# 외부 데이터 가져오기
> exam <- read.csv('csv_exam.csv')
> exam
   id class math english science
1   1     1   50      98      50
2   2     1   60      97      60
3   3     1   45      86      78
4   4     1   30      98      58
5   5     2   25      80      65
6   6     2   50      89      98
7   7     2   80      90      45
8   8     2   90      78      25
9   9     3   20      98      15
10 10     3   50      98      45
11 11     3   65      65      65
12 12     3   45      85      32
13 13     4   46      98      65
14 14     4   48      87      12
15 15     4   75      56      78
16 16     4   58      98      65
17 17     5   65      68      98
18 18     5   80      78      90
19 19     5   89      68      87
20 20     5   78      83      58

 

- 데이터 살펴보기

# 컬럼 개수
> ncol(exam)
[1] 5

# 행 개수
> nrow(exam)
[1] 20

# 컬럼명
> names(exam)
[1] "id"      "class"   "math"    "english" "science"

# 데이터 앞부분 출력
> head(exam)
  id class math english science
1  1     1   50      98      50
2  2     1   60      97      60
3  3     1   45      86      78
4  4     1   30      98      58
5  5     2   25      80      65
6  6     2   50      89      98
> head(exam, 3)
  id class math english science
1  1     1   50      98      50
2  2     1   60      97      60
3  3     1   45      86      78

# 데이터 뒷부분 출력
> tail(exam)
   id class math english science
15 15     4   75      56      78
16 16     4   58      98      65
17 17     5   65      68      98
18 18     5   80      78      90
19 19     5   89      68      87
20 20     5   78      83      58
> tail(exam, 3)
   id class math english science
18 18     5   80      78      90
19 19     5   89      68      87
20 20     5   78      83      58

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

# 데이터 차원 출력
> dim(exam)
[1] 20  5

# 데이터 속성 출력
> str(exam)
'data.frame':	20 obs. of  5 variables:
 $ id     : int  1 2 3 4 5 6 7 8 9 10 ...
 $ class  : int  1 1 1 1 2 2 2 2 3 3 ...
 $ math   : int  50 60 45 30 25 50 80 90 20 50 ...
 $ english: int  98 97 86 98 80 89 90 78 98 98 ...
 $ science: int  50 60 78 58 65 98 45 25 15 45 ...
 
# 요약 통계량 출력
> summary(exam)
       id            class        math          english    
 Min.   : 1.00   Min.   :1   Min.   :20.00   Min.   :56.0  
 1st Qu.: 5.75   1st Qu.:2   1st Qu.:45.75   1st Qu.:78.0  
 Median :10.50   Median :3   Median :54.00   Median :86.5  
 Mean   :10.50   Mean   :3   Mean   :57.45   Mean   :84.9  
 3rd Qu.:15.25   3rd Qu.:4   3rd Qu.:75.75   3rd Qu.:98.0  
 Max.   :20.00   Max.   :5   Max.   :90.00   Max.   :98.0  
    science     
 Min.   :12.00  
 1st Qu.:45.00  
 Median :62.50  
 Mean   :59.45  
 3rd Qu.:78.00  
 Max.   :98.00

 

- 파일에 컬럼명이 지정되어 있지 않은 경우

# 1. 컬럼명 벡터 생성
> label = c('id', 'class', 'math', 'english', 'korean')

# 2. 파일 불러오기
> exam2 <- read.csv('csv_exam.csv', header=F, col.names=label)
> exam2
   id class math english  korean
1  id class math english science
2   1     1   50      98      50
3   2     1   60      97      60
4   3     1   45      86      78
5   4     1   30      98      58
6   5     2   25      80      65
7   6     2   50      89      98
8   7     2   80      90      45
9   8     2   90      78      25
10  9     3   20      98      15
11 10     3   50      98      45
12 11     3   65      65      65
13 12     3   45      85      32
14 13     4   46      98      65
15 14     4   48      87      12
16 15     4   75      56      78
17 16     4   58      98      65
18 17     5   65      68      98
19 18     5   80      78      90
20 19     5   89      68      87
21 20     5   78      83      58
728x90

'PROGRAMMING > R' 카테고리의 다른 글

[R] 데이터 전처리  (0) 2021.07.19
[R] Text Mining과 WordCloud 실습  (0) 2021.07.19
[R] Text Mining과 WordCloud  (0) 2021.07.17
[R] 데이터 프레임 (Data Frame)  (0) 2021.07.17
[R] 벡터 (Vector)  (0) 2021.07.17

댓글