collapse 2.0 출시: 초고속 조인, 재구성, 향상된 R

R-Blogger · 블로그·해설 · 2023-10-17

R-Blogger블로그·해설한국어2023-10-17

collapse 2.0 출시: 초고속 조인, 재구성, 향상된 R

collapse 2.0 출시: 초고속 조인, 리샤핑, 향상된 R 기능collapse 2.0이 출시되었습니다. 이 버전은 초고속 조인, 피벗 기능, 유연한 네임스페이스 및 다양한 기능을 추가하며, 새로운 웹사이트, 업데이트된 치트시트, tidyverse 사용자를 위한 새로운 비네트가 포함되어 있습니다. 2020년 3월 첫 릴리스 이후 3.5년 동안 10개의 주요 업데이트를 거쳐, collapse는 견고하고, 안정적이며, 경량화되고, 빠르고, 통계적으로 진보된, 포괄적이고, 유연하며, 클래스에 구애받지 않는, 풍부한 문서가 있는 통계 소프트웨어가 되었습니다.이 버전은 풍부하고 빠르며, 상세한 조인과 피벗을 제공하고, 안전한 인터랙티브 네임스페이스 마스킹과 광범위한 전역 설정 가능성을 통해 R 사용자가 데이터 조작 및 통계 계산 작업에 활용할 수 있는 워크하우스 패키지로 자리매김할 것입니다.1. 클래스에 구애받지 않는 풍부하고 상세한 테이블 조인조인은 많은 요청을 받아 구현되었습니다. 복잡하고 위험성이 높은 연산이었으나, polars에서 영감을 받아 성능, 범용성, 상세함을 만족시키는 구현을 설계했습니다. join() 함수를 사용하면 left, inner, full, right, semi, anti 6가지 조인을 지원하며, how 인자를 통해 원하는 조인을 지정합니다. 기본값은 left join입니다.두 가지 조인 알고리즘을 제공하며, vectorized hash join(기본값, sort = FALSE)와 sort-merge-join(sort = TRUE)입니다. join-column 인자는 on 으로 호출되며, 비어 있으면 양쪽 데이터셋에 존재하는 컬럼이 선택됩니다.library(collapse) df1 <- data.frame(id1 = 1:4, id2 = c(1,1,2,3), name = c("a","b","b","c")) df2 <- data.frame(id1 = c(1,1,2,3), id2 = c(1,1,2,3), dept = c("age","salary","age","salary")) join(df1, df2, on = c("id1","id2"))예제 실행 시 경고가 발생할 수 있으나, overid = 2 로 설정하면 경고가 사라집니다. fmatch()와 같은 함수에서 추가 매칭이 필요한 경우, unique id를 기준으로 매칭을 수행합니다.2. 고급 피벗 기능collapse 2.0의 두 번째 주요 추가 기능은 pivot()입니다. 한 API로 긴 형태, 넓은 형태, 재구성 피벗 기능을 지원하며, 리샤핑 과정에서 변수 라벨을 포함할 수 있습니다.아래 예시는 2014년 그로닝거 성장 및 개발 센터 10-섹터 데이터베이스를 사용합니다.head(GGDC10S) ## Country Regioncode Region Variable Year AGR MIN MAN PU CON WRT TRA FIRE GOV OTH SUM ## 1 BWA SSA Sub-saharan Africa VA 1960 NA NA NA NA NA NA NA NA NA NA NA NA ## 2 BWA SSA Sub-saharan Africa VA 1961 NA NA NA NA NA NA NA NA NA NA NA NA ## 3 BWA SSA Sub-saharan Africa VA 1962 NA NA NA NA NA NA NA NA NA NA NA NA ## 4 BWA SSA Sub-saharan Africa VA 1963 NA NA NA NA NA NA NA NA NA NA NA NA ## 5 BWA SSA Sub-saharan Africa VA 1964 16.30154 3.494075 0.7365696 0.1043936 0.6600454 6.243732 1.658928 1.119194 4.822485 2.341328 37.48229 namlab(GGDC10S, N = TRUE, Ndistinct = TRUE) ## Variable N Ndist Label ## 1 Country 5027 43 Country ## 2 Regioncode 5027 6 Region code ## 3 Region 5027 6 Region ## 4 Variable 5027 2 Variable ## 5 Year 5027 67 Year ## 6 AGR 4364 4353 Agriculture ## 7 MIN 4355 4224 Mining ## 8 MAN 4355 4353 Manufacturing ## 9 PU 4354 4237 Utilities ## 10 CON 4355 4339 Construction ## 11 WRT 4355 4344 Trade, restaurants and hotels ## 12 TRA 4355 4334 Transport, storage and communication ## 13 FIRE 4355 4349 Finance, insurance, real estate and business services ## 14 GOV 3482 3470 Government services ## 15 OTH 4248 4238 Community, social and personal services ## 16 SUM 4364 4364 Summation of sec이처럼 pivot()는 변수 라벨을 반영하면서 데이터셋을 손쉽게 재구성할 수 있게 해줍니다.3. 정리 및 향후 전망collapse는 R의 성능을 가속화하고 풍부화하려는 접근 방식이 다른 패키지보다 포괄적이라고 생각합니다. 앞으로도 계속 개선할 예정이며, R 사용자와 데이터 과학자들에게 가치 있는 도구가 될 것입니다. 새로운 버전과 기능을 경험해 보시기 바랍니다.
원문 URL
전체 글은 원문 페이지에서 이어서 읽을 수 있습니다.
원문에서 전체 글 읽기
작성자
R-Blogger
출처
R-Blogger
플랫폼
R-Blogger
분류
블로그·해설
언어
한국어
발행일
2023-10-17