R:데이터프레임
편집하기 (부분)
둘러보기로 이동
검색으로 이동
경고:
로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다.
로그인
하거나
계정을 생성하면
편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.
스팸 방지 검사입니다. 이것을 입력하지
마세요
!
==데이터 결합== {| class="wikitable" !이름 !기원 !기능 !사용법 |- |rbind() |row bind |데이터를 세로결합한다.(관찰치의 증가) 데이터프레임의 변수(열이름)가 다른 경우, 에러가 뜬다. 서로 다른 변수의 데이터를 결합시키기 전에 두 자료의 변수를 일치시키는 사전작업이 필요하다. 아래의 함수를 거치면 변수가 맞춰진 tmp.df1 과 tmp.df2 를 반환한다.<ref>양경숙, 김미경(2014). 기초자료분석을 위한 R 입문 p.138</ref><syntaxhighlight lang="r"> 사용자 정의함수 = function(df1, df2) { all.name = union(colnames(df1), colnames(df2)) diff.name1 = setdiff(all.name, colnames(df1)) diff.name2 = setdiff(all.name, colnames(df2)) tmp.df1=df1 tmp.df2=df2 if(length(diff.name1)>0) { for(i in 1:length(diff.name1)) { tmp = matrix(NA, nrow-nrow(df1)) mode(tmp) = mode(df2[,diff.name1[i]]) colnames(tmp) = diff.name1[i] tmp.df1 = cbind(tmp.df1,tmp) }} if(length(diff.name2)>0) { for(i in 1:length(diff.name2)) { tmp = matrix(NA, nrow-nrow(df2)) mode(tmp) = mode(df2[,diff.name2[i]]) colnames(tmp) = diff.name2[i] tmp.df2 = cbind(tmp.df2,tmp) }} } </syntaxhighlight> |rbind(데이터프레임1, 데이터프레임2) |- |bind_rows() | |단순히 행을 합친다. |bind_rows(데이터셋1, 데이터셋2) |- |merge() |merge |데이터를 가로결합한다.(변수의 증가) cbind의 경우, 관찰치 수가 동일하고 관측대상이 동일해야만 적용 가능하여 merge를 쓴다. 고객정보를 더 추가하는 등... {| class="wikitable" |+ !옵션 !설명 ! ! |- |by= |결합기준 결정. 디폴드는 교집합인 intersect(names(x), names(y))이다. by.x, by.y를 통해 기준변수를 결정할 수 있다. 보통 키 값을 넣어 합친다. c("열이름1, 열이름2") 형태로 둔다. | | |- |all= |관측대상에 대해 일치하지 않는 관찰치에 대해. FALSE면 일치할 때에만 포함한다. TRUE면 두 데이터에 동시에 존재하지 않는 데이터는 결측치로 추가. | | |- |suffixes= |by의해 합쳐지는 변수가 아니라, 같은 이름의 변수가 있을 때 suffixes=c(".1", ".2") 로 두어 변수.1, 변수.2로 갈라넣을 수 있다. | | |} |merge(데이터프레임1, 데이터프레임2, 옵션) |- |inner_join() | |합치는 데이터의 교집합을 얻는다.(비는 데이터가 없다.) #열이름 안의 데이터를 중심으로 데이터를 합친다. |inner_join(A, B, by="열이름") |- |Full_join() | |데이터를 합치되, 없는 값은 NA처리한다. | |- |Left_join() | |왼쪽의 데이터를 중심으로 합친다. 왼쪽 자료에서 없는 자료는 NA처리. 왼쪽데이터에 없는 내용은 잘린다. | |- |Right_join() | |위와 반대. | |}
요약:
학교의 모든 지식. SMwiki에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 라이선스로 배포된다는 점을 유의해 주세요(자세한 내용에 대해서는
학교의 모든 지식. SMwiki:저작권
문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다.
저작권이 있는 내용을 허가 없이 저장하지 마세요!
취소
편집 도움말
(새 창에서 열림)
둘러보기 메뉴
개인 도구
로그인하지 않음
토론
기여
로그인
이름공간
문서
토론
한국어
보기
읽기
편집
원본 편집
역사 보기
더 보기
검색
둘러보기
대문
최근 바뀜
임의의 문서로
미디어위키 도움말
도구
여기를 가리키는 문서
가리키는 글의 최근 바뀜
특수 문서 목록
문서 정보