CREAD
데이터의 생성, 참조, 수정, 추가, 삭제
데이터의 구조에 무관하여 가장 기본적인 데이터 처리는 크게 CREAD(Create(생성), Read(참조[1]), Edit(수정), Add(추가), Delete(수정))이 있다.
처음에는 각 데이터 구조마다 이들 기능을 수행하는 방법을 따로 배우겠지만 이들을 혼용하기 시작하면 문법이 헷갈리기 마련이다. 하지만 개념적으로 보면 모두 CREAD를 수행하는 것이다. 단지 데이터 구조에 따라 다른 방식으로 코드를 작성해야 하는 것뿐이다.
다음의 표는 R의 대표적인 데이터 구조인 행렬, 배열, 데이터프레임, 리스트에 대해 CREAD를 하는 방법을 보여준다.
사실 R에서 참조, 수정, 추가, 삭제는 우리가 생각하는 방식과 다르게 작동한다.[2] 하지만 표를 이해하고 활용하는데 큰 무리는 없을 것이다.
몇 가지 눈여겨 볼 부분은 자동적으로 변형이 일어나는 경우이다. 행렬 같은 경우 참조(read) 또는 삭제(delete)의 결과가 벡터로도 표현 가능한 크기 \(1 \times m\) 또는 \(n \times 1\) 의 행렬이라면 벡터로 변형이 일어난다. 이를 방지하려면 drop=FALSE
를 명시해야 한다.
그리고 추가시에 기존의 데이터 타입으로 표현이 불가능한 경우 모든 원소의 데이터 타입이 변형된다(행렬의 경우 모든 원소가 공통적인 데이터 타입을 가져야 하기 때문이다).
[1]: ‘참조‘는 reference의 번역으로 많이 쓰이긴 하지만, 여기서는 read의 의미로 쓰였다.
[2]: 좀 더 자세한 내용은 https://adv-r.hadley.nz/names-values.html를 참조하길 바란다.
Leave a comment