해당 포스트는 네이버지식인을 통해 질문 받은 "3개 이상의 데이터 프레임을 병합하는 방법"에 대한 답변을 공유하는 글입니다.질문**R프로그래밍을 배우고 있는 학생인데 지금 데이터프레임병합을 하고 있습니다.3개이상의 데이터프레임을 병합하려면 어떤 함수를 써야하나요검색을 해도 2개의 데이터 프레임을 병합하는 방법만 나옵니다....도와주시면 감사하겠습니다.**풀이R에서 3개 이상의 데이터 프레임(Data Frame)을 병합하는 방법은 크게 2가지로 나누어 집니다.merge() 내장 함수 사용dplyr 패키지의 left_join() 사용아래에서는 샘플 데이터를 만들고 두 함수를 사용하여 병합하는 방법에 대해 설명합니다.데이터 생성아래는 설명에 사용할 3개의 데이터 프레임을 생성하는 코드입니다.# 데이터프레임 1..
해당 포스트에서는 'R에서 기존 변수로 조건에 맞는 새로운 변수를 생성 하는 방법' 에 대해 설명합니다. INTRO R에서 조건절을 사용한다면 가장 많이 사용되는 함수는 if(), ifelse() 입니다. 두 함수는 사용자가 원하는 조건에 따라 기존 변수를 변환 또는 생성해 주는데 조건이 3개 이상이 된다면 함수 사용에 불편함(e.g. 함수의 반복 사용으로 인식률 저하)이 발생합니다. 이런 경우를 위해 dplyr 패키지에서는 case_when() 함수를 제공하고 있고, 아래에서는 한 개 컬럼을 기준으로 적용할 때와 두 개 이상 컬럼을 기준으로 적용할 때를 나누어 예시 코드와 함께 사용 방법을 설명합니다. case_when 데이터에 기존에 있던 변수를 이용해 새로운 변수를 생성할 때에는 기본..
해당 포스트에서는 데이터 처리 전문 패키지인 dplyr의 mutate 함수 활용에 대해 소개합니다. INTRO R에서 데이터 처리를 한다면 많은 분들이 dplyr 패키지를 먼저 설치하게 됩니다. 유용한 함수들이 많이 포함되어 있기도 하지만 tidyverse 생태계에 포함되어 있어 타 패키지들과의 호환성이 뛰어나다는 장점이 있습니다. 아래에서는 dplyr 패키지에서 제공되는 함수들 중 mutate() 계열의 함수들을 예제 코드와 함께 소개합니다. mutate()? dplyr 패키지에서 제공되는 mutate() 함수는 데이터 프레임(Data Frame)에 변수를 추가할 때 사용됩니다. mutate 계열 함수 mutate() : 기존 변수를 유지하면서 새로운 변수 추가 transmute() : 기존 변수는 제..
해당 포스트에서는 R 데이터 필터링 방법 중 하나인 '포함되지 않는(not in)' 데이터 추출 방법을 설명합니다. INTRO R에서 원하는 데이터를 추출하려면 특정 컬럼을 선택하거나 데이터 내 값의 조건을 적용하여 추출하면 됩니다. 해당 포스트에서는 후자의 경우인, 조건을 이용해 특정 값에 해당하는 데이터 필터링 방법에 대해 설명하며, '조건에 해당하지 않는' 데이터 추출 방법을 설명합니다. 원문 출처 : [R-bloggers] How to Use “not in” operator in Filter filter 함수 설명 아래에서는 dplyr 패키지에서 제공하는 filter() 함수를 이용하여 설명합니다. dplyr 패키지는 다양한 데이터 처리를 지원해주는 R 필수 패키지 중..
해당 포스트에서는 R에서 데이터 정렬 방법(order(), arrange())에 대해 설명합니다. 1. INTRO R에서 데이터 정렬이 필요한 경우, 내장 함수인 order()와 dplyr 패키지의 arrange() 함수를 많이 사용합니다. 아래에서는 두 함수의 사용 방법을 설명하니 상황에 따라 필요한 함수를 골라 사용하시면 됩니다. 2. order() order()은 R에서 제공되는 내장 함수로 별도의 설치가 필요하지 않습니다. order() 함수만 단독으로 쓰는 경우, 각 값의 순위(rank)가 리턴되기에 일반적으로는 아래와 같이 변수 내 인덱싱에 적용하여 정렬하는데 사용됩니다. mylist 생성 mylist % arrange(mpg) mpg cyl disp hp drat wt qsec vs am g..
해당 포스트는 R에서 tidyverse 패키지를 이용하여 데이터 필터링하는 방법을 코드와 함께 소개하는 글입니다. 1. INTRO 데이터 프레임(Data Frame)은 R에서 가장 많이 사용하는 자료 구조입니다. 분석을 위해 데이터를 추출하거나 필터링하는 경우, 내장 함수만으로도 처리 가능하지만 tidyverse 패키지(정확히는 tidyverse 패키지에 포함된 dplyr 패키지)를 이용하면 좀 더 직관적이고 효과적인 처리가 가능해 집니다. R 내장 데이터셋인 msleep을 이용해 코드와 함께 설명하겠습니다. 패키지 불러오기 library(tidyverse) head(msleep) # A tibble: 6 x 11 name genus vore order conservation sleep_total sle..
해당 포스트에서는 R에서 행 평균값을 계산하여 새로운 컬럼에 저장하는 방법을 소개합니다. 1. INTRO R에는 평균을 계산해 주는 mean() 기본 함수가 있습니다. 벡터 또는 리스트 내의 평균을 계산하는 경우는 mean() 함수로 간단히 해결할 수 있지만, 행 별로 평균을 계산해야 하는 경우는 다른 풀이가 필요합니다. 아래에서는 네이버 지식인에 올라온 질문을 기반으로 tibble()과 data.frame() 구조에서 행별 평균을 구하는 방법을 설명드리겠습니다. 2. 문제 풀이 tibble 사용하기 데이터 생성 먼저 질문자가 제시한 표를 데이터(mydata)로 생성해 보겠습니다. 참고로 아래 내용에 dplyr 문법이 언급된 것이 보이니 tibble() 구조로 생성하겠습니다. library(tidyver..
해당 포스트는 R에서 수행하는 데이터 변환 작업 중, 컬럼(열) 기준으로 데이터를 합치기는 방법을 소개합니다. 배경 많은 분들이 데이터 분석에 관심을 보이고 계시며, 최근 회사에서도 R이나 Python을 업무에 사용하시려는 분들이 늘어나고 있습니다. 두가지 언어를 조금씩 사용할 줄 알다보니 다양한 질문을 받게되는데 그 중 간단하고 공개 가능한 정보들은 공유하려고 합니다. 이번 포스트에서는 동일한 ID를 가지는 데이터들을 콤마(,)로 이어붙여 새로운 컬럼을 생성하는 방법을 소개 합니다. 질문 (Question) 아래 그림과 같이 데이터를 변환하려고 합니다. R 코딩으로 가능할까요? 답변 (Answer) 먼저, 엑셀(Excel)에서 사용하는 모든 함수 및 작업은 R에서도 가능하다고 보시면 됩니다. 질문 데이..