리스트(List)
- 숫자형,문자형 데이터를 섞어서 저장이 가능
- 벡터와 같이 인덱스 번호로 내부 데이터 접근이 가능
- 리스트 안에 벡터형 데이터도 추가 가능
list(키1=값1, 키2=값2, ...) #해당 키에 값을 할당
#키 없이 값만 넣어도 가능
변수명$추가할key<-값 #리스트 항목 추가
행렬(Matrix)
- 2차원 벡터를 표현하기 위한 방법
- 같은 자료형끼리만 저장 가능
- 데이터는 열을 기준으로 세로로 먼저 들어간다. --> 행중심으로 기록하기를 원한다면 byrow=TRUE 추가
- 행렬의 이름 추가 --> dimnames(행렬)<-값
- 행렬에 새로운 행/열 추가
1. 행 추가 --> rbind(행렬, 행에 추가할 원소)
2. 열 추가 --> cbind(행렬, 열에 추가할 원소)
matrix(행렬의 구성 원소, nrow=행의 개수, ncol=열의 개수, dimnames=행렬의 이름)
#열중심(column-major order)
#행중심으로 원소를 기록하고 싶을 때 --> matrix(행렬의 구성 원소, nrow=행의 개수, ncol=열의 개수, byrow=TRUE)
데이터프레임(data frame)
- 데이터베이스 테이블에 컬럼을 만들고 값을 저장하는 형태와 비슷한 성격으로 R 에서 가장 많이 쓰이는 객체
- 행렬과 동일하지만 데이터 타입이 상관없다는 차이점이 있다.
read.table() #외부 텍스트 파일을 불러들임
data.frame() #여러 종류의 자료객체들을 결합시키는 방법
df<-as.data.frame() #데이터프레임으로 변환하여 df에 할당
- 데이터프레임 합치기
1. 열(옆)방향으로 합치기 - cbind()
2. 행(아래)방향으로 합치기 - rbind()
3. 데이터프레임에서 중복된 열이 있을 경우 merge() 함수 이용하여 병합
- subset 함수 --> 특정 컬럼만으로 이루어진 프레임 생성
data1<-subset(pinfo, select=-거주지역) #거주지역 빼고 전부다
data2<-subset(pinfo, select=c(이름, 나이)) #이름, 나이 행만
- 데이터프레임 특정 행/열 삭제
data2[-3:] #3행 삭제
data2[:-5] #5열 삭제
- 행 크기 --> nrow(데이터프레임)
- 열 크기 --> ncol(데이터프레임)
- 데이터프레임 header 이름 --> colnames(데이터프레임) / names(데이터프레임)
'study > 빅데이터 분석' 카테고리의 다른 글
[R프로그래밍] #6. 외부파일 읽어오기 (0) | 2021.06.30 |
---|---|
[R프로그래밍] #5. 조건제어문, 함수 (0) | 2021.06.29 |
[R프로그래밍] #3. 산술연산자, 변수, 자료형-1 (0) | 2021.06.21 |
[R프로그래밍] #2. R 패키지 설치 (0) | 2021.06.18 |
[R프로그래밍] #1. R프로그래밍 정의 및 특징, R 설치, JDK 설치 (0) | 2021.06.18 |