R에서의 데이터 조작: dplyr 패키지를 사용한 변수란 무엇입니까?

게시 됨: 2020-03-26

목차

소개

직원과 인프라를 제외하고 데이터는 모든 회사의 새로운 빌딩 블록입니다. 대기업에서 소규모 산업에 이르기까지 데이터는 비즈니스를 이끄는 연료입니다. 이 데이터는 일일 비즈니스 거래, 고객 구매 데이터, 판매 데이터, 재무 차트, 비즈니스 통계, 마케팅 캠페인 등과 연결됩니다. 이것이 바로 O'Reilly Media의 설립자인 Tim O'Reilly가 우리가 소프트웨어보다 데이터가 더 중요해지는 상황에 진입했다고 말한 이유입니다.

하지만 그 많은 데이터를 어떻게 해야 할까요? 기업은 이 데이터를 사용하여 비즈니스 성과에 대한 귀중한 통찰력을 얻습니다. 그들은 이 데이터를 이해하기 위해 R에서 데이터 조작 을 수행하는 데이터 과학자를 고용합니다 . 예를 들어, 지난 해의 판매 및 마케팅 데이터를 이해하면 현재 위치에 대한 아이디어를 얻을 수 있습니다. 최근 연구에 따르면 데이터 분석 시장은 2023년까지 776억 달러의 가치가 있을 것으로 예상됩니다.

데이터 과학자는 데이터 조작이라는 프로세스를 통해 이 데이터를 이해하기 위해 고용됩니다.

데이터 조작이란 무엇입니까?

데이터 조작 은 데이터를 더 잘 읽고 이해할 수 있도록 데이터를 구성하는 프로세스입니다. 예를 들어, 회사 직원은 시스템 및 로그북에서 고객 데이터를 얻을 수 있습니다. 대부분 이 데이터는 CRM(고객 관계 관리) 소프트웨어와 엑셀 시트에 저장됩니다. 그러나 제대로 정리되지 않을 수 있습니다. 데이터 조작에는 알파벳 순서와 같이 이 모든 데이터를 구성하는 방법이 포함됩니다.

데이터는 날짜, 시간, 일련 번호 또는 기타 필드에 따라 정렬할 수 있습니다. 회사의 회계 부서 직원은 데이터를 사용하여 판매 동향, 사용자 선호도, 시장 통계 및 제품 가격을 결정합니다. 재무 분석가는 데이터를 사용하여 주식 시장의 실적, 추세 및 투자해야 할 최고의 주식을 이해합니다.

또한 웹 서버 데이터는 웹 사이트의 트래픽 양을 이해하는 데 사용할 수 있습니다. 이 기술 시대에 IoT는 기계에 부착된 센서에서 데이터를 얻는 기술의 한 예입니다. 이 데이터는 기계의 성능과 결함이 있는지 판단하는 데 사용됩니다. 2025년까지 시장 규모가 816억 7000만 달러가 될 것이기 때문에 데이터 조작은 IoT에서 매우 중요합니다.

데이터 조작은 일반적으로 R이라는 프로그래밍 언어를 사용하여 수행됩니다. 언어를 조금 더 잘 알려주십시오.

R은 무엇입니까?

R의 데이터 조작 을 이해하려면 R 의 기본 사항을 알아야 합니다. 데이터 분석, 통계 컴퓨팅 및 인공 지능에 사용되는 최신 프로그래밍 언어입니다. 언어는 Ross Ihaka와 Robert Gentleman 에 의해 1993년에 만들어졌습니다 . 오늘날 연구원, 데이터 분석가, 과학자 및 통계학자는 R을 사용하여 데이터를 분석, 정리 및 시각화합니다.

R에는 기계 학습, 선형 회귀, 통계적 추론 및 시계열을 지원할 수 있는 그래픽 및 통계 방법으로 구성된 방대한 카탈로그가 있습니다. GNU 일반 공중 사용 허가서에 따라 이 언어는 Windows, Mac 및 Linux와 같은 운영 체제에서 자유롭게 사용할 수 있습니다. 이는 플랫폼 친화적이므로 한 플랫폼에서 작성된 R 코드를 다른 플랫폼에서 쉽게 실행할 수 있습니다.

R은 이제 데이터 과학의 주요 프로그래밍 언어로 간주됩니다. 그러나 통계 모델링과 같은 복잡한 작업은 물론 소프트웨어 개발에도 사용할 수 있는 포괄적인 언어입니다. Rshiny 패키지를 사용하여 웹 애플리케이션을 개발할 수 있습니다.

구글, 페이스북 등 세계 유수의 기업들이 사용하고 있을 정도로 강력한 언어입니다.

R의 가장 중요한 몇 가지 기능을 살펴보겠습니다.

  • 데이터 작업에 필요한 모든 기능을 갖춘 10,000개 이상의 R 패키지가 있는 저장소인 CRAN ( Comprehensive R Archive Network) 이 있습니다.
  • 오픈 소스 프로그래밍 언어 입니다 . 즉, 무료로 다운로드할 수 있으며 개발에 기여하고 기능을 업데이트하고 기존 기능을 사용자 지정할 수 있습니다.
  • ggplot2 plotly 와 같은 R의 유용한 그래픽 라이브러리에서 제공하는 데이터에서 고품질 시각화를 생성할 수 있습니다 .
  • R은 매우 빠른 언어입니다. 해석된 프로그래밍 언어 이므로 R 프로그램을 실행 코드로 변환하기 위한 컴파일러가 필요하지 않으므로 R 스크립트가 더 빠르게 실행됩니다.
  • R은 배열, 데이터 프레임 및 벡터 로 구성된 다양한 복잡한 계산을 순식간에 수행할 수 있습니다 . 이러한 계산을 수행하기 위한 많은 연산자가 있습니다.
  • 정형 및 비정형 데이터를 처리합니다. 모든 유형의 데이터를 처리하기 위해 Big Data 및 SQL용 확장을 사용할 수 있습니다.
  • R은 가장 밝은 마음을 가진 지속적으로 성장하는 커뮤니티를 보유하고 있습니다. 이 사람들은 r 라이브러리 및 업데이트를 개발하여 프로그래밍 언어에 지속적으로 기여하고 있습니다.
  • Python, Java 및 C++와 같은 다른 프로그래밍 언어와 R을 쉽게 통합할 수 있습니다. 분산 컴퓨팅을 위해 Hadoop 과 결합할 수도 있습니다.

이제 R 프로그래밍 언어의 기본 사항을 모았으므로 흥미로운 내용을 살펴보겠습니다!

R의 변수

R로 프로그래밍하거나 R 에서 데이터 조작을 수행하는 동안 변수를 처리해야 합니다. 변수는 문자열, 정수, 부동 소수점 정수 또는 부울 값의 형태일 수 있는 데이터를 저장하는 데 사용됩니다. 이러한 변수는 내용을 위한 메모리 공간을 예약합니다. 기존 프로그래밍 언어와 달리 R의 변수는 R 객체 와 함께 할당됩니다 .

변수에는 데이터 유형이 없지만 할당된 R 개체의 유형을 가져옵니다. 가장 많이 사용되는 R 개체는 다음과 같습니다.

  • 벡터
  • 기울기
  • 배열
  • 행렬
  • 요인
  • 데이터 프레임

이러한 데이터 구조는 R 및 데이터 분석 의 데이터 조작에 매우 중요합니다 . 기본적인 데이터 조작을 이해하기 위해 조금 더 자세히 살펴보겠습니다.

벡터

가장 기본적인 데이터 구조로 1차원 데이터에 사용됩니다. 원자 벡터의 유형은 다음과 같습니다.

  • 정수
  • 논리적
  • 숫자
  • 복잡한
  • 성격

R에서 값을 생성하면 길이가 1인 단일 요소 벡터가 됩니다. 예를 들어,

인쇄("ABC"); # 문자 유형의 단일 요소 벡터

print(10.5) # 이중 유형의 단일 요소 벡터

벡터의 요소는 인덱스 번호를 사용하여 액세스합니다. 벡터의 인덱스 위치는 1부터 시작합니다. 예를 들어,

t <- c("월","화","수","토")

유 <- t[c(1,2,3)]

인쇄(u)

결과는 "월" "화" "수"입니다.

기울기

이것들은 내부에 다양한 유형의 요소를 보유하는 데 사용되는 R의 객체입니다. 정수, 문자열, 심지어 목록이 될 수도 있습니다. 데이터를 데이터 프레임이나 배열에 저장할 수 없는 경우 이것이 최선의 선택입니다. 목록에는 행렬도 포함될 수 있습니다. list() 메서드를 사용하여 목록을 만들 수 있습니다.

다음 코드를 사용하여 목록을 만듭니다.

list_data <- list("검정색", "녹색", c(11,4,14), TRUE, 31.22, 120.5)

인쇄(목록_데이터)

목록 요소는 목록 인덱스를 사용하여 액세스할 수 있습니다.

print(list_data[1]) #코드는 목록의 첫 번째 요소를 출력합니다.

목록을 사용한 데이터 조작의 예:

list_data[4] <- NULL # 이 코드는 4개의 요소가 있는 경우 목록의 마지막 요소를 제거합니다.

읽기: 데이터 과학을 위한 R과 Python

배열

배열은 단일 데이터 유형만 저장하는 데 사용할 수 있는 개체입니다. 2차원 이상의 데이터는 배열에 저장할 수 있습니다. 이를 위해서는 벡터를 입력으로 받는 array() 함수를 사용해야 합니다. 배열을 생성하기 위해 dim 매개변수의 값을 사용합니다.

예를 들어 다음 코드를 보십시오.

vector_result <- array(c(vectorA,vectorB),dim = c(3,3,2))

인쇄(벡터 결과)

행렬

이러한 R 개체에서 요소는 2차원 레이아웃으로 구성됩니다. 행렬은 유사한 원자 유형의 요소를 보유합니다. 이는 요소가 단일 클래스에 속할 때 유용합니다. 수학적 계산을 위해 숫자 요소가 있는 행렬이 생성됩니다. matrix() 함수를 사용하여 행렬을 만들 수 있습니다.

행렬을 만드는 기본 구문은 다음과 같습니다.

행렬(data, nrow, ncol, byrow, dimnames)

  • 데이터 – 행렬의 데이터 요소가 되는 입력 벡터입니다.
  • Nrow – 생성하려는 행의 수입니다.
  • Ncol – 생성하려는 열의 수입니다.
  • Byrow – 이것은 논리적인 단서입니다. 값이 TRUE이면 벡터 요소는 행별로 정렬됩니다.
  • Dimname – 열과 행에 부여된 이름

요인

이러한 R 개체는 데이터를 분류하고 수준으로 저장하는 데 사용됩니다. 통계 모델링 및 데이터 분석에 좋습니다. 정수와 문자열 모두 인수에 저장할 수 있습니다. 벡터를 메서드에 대한 입력으로 제공하여 factor() 함수를 사용하여 요인을 생성할 수 있습니다.

데이터 프레임

행과 열이 있는 배열과 같은 2차원 구조를 가지고 있습니다. 여기에서 각 행에는 각 열에 속하는 값 집합이 있습니다. 열에는 하나의 변수 값이 포함됩니다. 스프레드시트의 데이터를 나타내는 데 사용됩니다. 이들은 요소, 숫자 또는 문자 유형의 데이터를 저장하는 데 사용할 수 있습니다.

데이터 프레임에는 다음과 같은 기능이 있습니다.

  • 행 이름은 고유해야 합니다.
  • 열 이름은 비어 있지 않아야 합니다.
  • 각 열의 데이터 항목 수는 동일해야 합니다.

R의 데이터 조작

R에서 데이터를 조작 하는 동안 첫 번째 단계는 거대한 데이터 세트에서 작은 데이터 샘플을 만드는 것입니다. 이는 전체 데이터 세트를 한 번에 분석할 수 없기 때문에 수행됩니다. 일반적으로 데이터 분석가는 데이터 세트의 대표적인 하위 집합을 만듭니다. 이는 더 큰 데이터 세트에서 추세와 패턴을 식별하는 데 도움이 됩니다. 이 샘플링 과정을 부분세팅 이라고도 합니다.

R에서 하위 집합을 만드는 다양한 방법은 다음과 같습니다.

  • $ – 이것은 데이터의 단일 요소를 선택하고 그 결과는 항상 벡터입니다.
  • [[ – 이 부분 집합 연산자는 단일 요소도 반환하지만 위치별로 요소를 참조할 수 있습니다.

  • [ – 이 연산자는 데이터의 여러 요소를 반환하는 데 사용됩니다.

R에서 데이터 조작을 위한 몇 가지 기본 기능 은 다음과 같습니다.

샘플() 함수

이름에서 알 수 있듯이 sample() 메서드는 더 큰 데이터 세트에서 데이터 샘플을 만드는 데 사용됩니다. 이 명령과 함께 데이터 세트 또는 벡터에서 추출하려는 샘플 수를 언급합니다. 기본 구문은 다음과 같습니다.

샘플(x, 크기, 바꾸기 = FALSE, 확률 = NULL)

x – 샘플을 선택해야 하는 여러 요소의 데이터 세트 또는 벡터일 수 있습니다.

size – 선택할 항목의 수를 나타내는 양의 정수입니다.

교체 – 교체 여부에 관계없이 샘플링을 원하는지 여부에 따라 True 또는 False가 될 수 있습니다.

prob – 샘플링되는 벡터의 요소를 가져오기 위한 가중치 벡터를 제공하는 데 사용되는 인수입니다.

테이블() 함수

이 함수는 특정 변수의 고유 값 수를 계산하는 데 사용되는 빈도 테이블을 만듭니다. 예를 들어, 홍채 데이터 세트로 빈도 테이블을 생성해 보겠습니다.

테이블(홍채$종)

위에 작성된 코드는 홍채 데이터 세트의 종의 유형을 나타내는 테이블을 생성합니다.

중복()

duplicated() 메서드는 데이터 세트에서 중복 값을 식별하고 제거하는 데 사용됩니다. 벡터 또는 데이터 프레임을 인수로 사용하고 중복된 요소에 대해 True를 반환합니다. 예를 들어,

중복(c(1,1,3))

이렇게 하면 이러한 요소 중 어떤 것이 중복되는지 확인하고 True 또는 False를 반환합니다.

읽어 보기: R의 의사결정나무

dplyr 패키지를 사용한 R의 데이터 조작

R은 데이터 조작을 위해 dplyr이라는 간단하고 사용하기 쉬운 패키지를 제공합니다. 패키지에는 조작, 데이터 탐색 및 변환을 위한 몇 가지 내장 메서드가 있습니다. 이 패키지의 가장 중요한 몇 가지 기능을 살펴보겠습니다.

고르다()

select() 메서드는 R에서 데이터 조작을 위한 기본 함수 중 하나입니다 . 이 방법은 R에서 열을 선택하는 데 사용됩니다. 이를 사용하여 열 이름과 같이 데이터를 선택할 수 있습니다. 특정 조건에 따라 열을 선택할 수 있습니다. myData라는 데이터 프레임 의 3 번째 와 4 번째을 선택한다고 가정 하면 코드는 다음과 같습니다.

선택(myData,3:4)

필터()

이 방법은 특정 기준과 일치하는 데이터 세트의 행을 필터링하는 데 사용됩니다. select()처럼 작동할 수 있으며 데이터 프레임을 먼저 전달한 다음 쉼표를 사용하여 구분된 조건을 전달합니다.

예를 들어, 데이터 세트에서 색상이 빨간색인 자동차가 있는 열을 필터링하려면 다음을 작성해야 합니다.

필터(자동차, 색상=="빨간색")

결과적으로 일치하는 행이 표시됩니다.

돌연변이()

mutate() 메서드사용 하여 이전 열을 유지하면서 데이터세트에 새 열을 만들 수 있습니다. 이러한 열은 조건을 지정하여 생성할 수 있습니다. 예를 들어,

mutate(mtcars, mtcars_new_col = mpg / cyl)

이 명령에서 mtcars 데이터셋 에 mpg 열 값을 cyl 열로 나눈 값을 포함하는 mtcars_new_col 새 열이 생성됩니다.

마련하다()

하나 이상의 변수를 사용하여 오름차순 또는 내림차순으로 행을 정렬하는 데 사용됩니다. desc() 메서드를 적용하는 대신 정렬 변수 앞에 빼기(-) 기호를 추가할 수 있습니다. 이것은 내림차순 정렬을 나타냅니다. 예를 들어,

배열(my_dataset, -Sepal.Length)

group_by()

group_by() 메서드는 하나 이상의 변수로 데이터 세트의 관찰을 그룹화하는 데 사용됩니다.

요약하다()

summarise() 함수는 평균, 중앙값 및 모드와 같은 데이터 통찰력을 결정하는 데 유용합니다. 다른 메소드 group_by에 의해 생성된 그룹화된 데이터와 함께 사용됩니다. summarise()는 여러 값을 단일 값으로 줄이는 데 도움이 됩니다.

병합()

merge() 메서드는 데이터 세트를 함께 결합하거나 병합합니다. 이는 여러 입력 데이터 소스를 함께 묶는 데 유용합니다.

이 방법은 데이터세트를 병합하는 4 가지 방법을 제공합니다 . 그들은 아래에 언급되어 있습니다:

  • 자연 조인 - 데이터 프레임 내에서 지정된 조건과 일치하는 행을 유지하는 데 사용됩니다.
  • 완전 외부 조인 – 두 데이터 프레임의 모든 행을 병합하고 저장합니다.
  • 왼쪽 외부 조인 – 데이터 프레임 A의 모든 행과 일치하는 B의 행을 저장합니다.
  • 오른쪽 외부 조인 - 데이터 프레임 B의 모든 행과 일치하는 A의 행을 저장합니다.

이름 바꾸기_if()

지정된 조건이 만족될 때 데이터 프레임의 컬럼 이름을 변경할 때 사용할 수 있는 기능입니다.

이름 바꾸기_모두()

이것은 조건을 지정하지 않고 데이터 프레임의 모든 열 이름을 바꾸는 데 사용됩니다.

세계 최고의 대학에서 데이터 과학 과정이수하 십시오. 귀하의 경력을 빠르게 추적하려면 Executive PG 프로그램, 고급 인증 프로그램 또는 석사 프로그램에 가입하십시오.

파이프 오퍼레이터

파이프 연산자는 전체 코드를 단순화하기 위해 magrittr 및 dplyr과 같은 패키지에서 사용할 수 있습니다 . 연산자를 사용하면 여러 기능을 함께 결합할 수 있습니다. %>% 기호로 표시되며 R에서 데이터를 조작하는 동안 summarise(), filter(), select() 및 group_by()와 같은 널리 사용되는 메서드와 함께 사용할 수 있습니다.

dplyr 외에도 R의 데이터 조작을 위한 CRAN의 다른 많은 패키지가 있습니다. 실제로 코딩과 오류를 줄이기 위한 7000개 이상의 패키지를 찾을 수 있습니다. 이러한 패키지의 대부분은 전문 개발자가 작성하므로 안전하게 사용할 수 있습니다. 여기에는 다음이 포함됩니다.

  • 데이터.테이블
  • 윤활하다
  • ggplot2
  • 리더
  • 재형성2
  • 정리정돈

결론

R에서 데이터 조작 의 초보자라면 R 에서 사용할 수 있는 내장 기본 기능을 사용할 수 있습니다. 여기에는 with(), inside(), duplicated(), cut(), table(), 샘플() 및 정렬(). 그러나 시간이 많이 걸리고 반복적입니다. 그다지 효율적인 옵션은 아닙니다.

따라서 가장 좋은 방법은 dplyr과 같은 CRAN에서 엄청난 수의 패키지를 사용하는 것입니다. 이것들은 매우 유용하며 프로그램을 보다 효율적으로 만듭니다.

R에서 데이터 조작에 유용한 패키지는 무엇입니까?

데이터 조작 프로세스는 사용 가능한 데이터를 수정하고 더 쉽게 구성할 수 있도록 하는 데 사용됩니다. 데이터를 수집한 기계에 의해 종종 많은 오류와 부정확성이 있습니다. 데이터 조작을 통해 이러한 부정확성을 제거하고 보다 정확한 데이터를 제공할 수 있습니다.

ggplot2, readr, dplyr 등과 같은 패키지를 사용하고 inside(), with() 등과 같은 Base R 기능을 사용하는 것과 같이 R에서 데이터 조작을 수행하는 많은 방법이 있습니다. 그러나 dplyr 패키지는 매우 고려됩니다. R에서의 데이터 조작에 유용하다. 이 패키지는 데이터 조작을 위해 특별히 만들어진 다양한 기능들로 구성되어 있으며, 다른 메소드 및 패키지에 비해 데이터를 더 빠르게 처리할 수 있다.

R에서 dplyr 패키지의 목적은 무엇입니까?

dplyr 패키지는 최대 효율로 R의 데이터 조작에 가장 적합한 것으로 알려져 있습니다. 이전에는 plyr이라는 패키지가 있었고 dplyr을 형성하기 위해 반복되었습니다. 이제 dplyr은 데이터 프레임에 완전히 초점을 맞춥니다. 이것이 훨씬 더 빠르고, 더 우수하고 일관된 API를 가지고 있으며, 사용하기도 매우 쉬운 이유입니다.

dplyr 패키지는 R의 다른 데이터 조작 패키지와 비교하여 향상된 성능으로 사용 가능한 데이터를 최대한 활용합니다.

데이터를 어떻게 조작할 수 있습니까?

데이터 조작을 수행하려면 일반적인 순서로 특정 단계를 수행해야 합니다. 다음 단계를 따르세요.

1. 먼저 데이터 소스에서 생성된 데이터베이스가 필요합니다.
2. 다음으로 데이터 조작으로 사용 가능한 데이터를 정리, 재정렬 및 ​​재구성해야 합니다.
3. 이제 작업할 데이터베이스를 개발해야 합니다.
4. 여기에서 사용 가능한 정보를 병합, 삭제 및 수정할 수 있습니다.
5. 마지막으로 사용 가능한 데이터를 분석하고 유용한 정보를 생성합니다.