R:데이터프레임: 두 판 사이의 차이
둘러보기로 이동
검색으로 이동
(새 문서: {{R}} == 데이터 결합 == {| class="wikitable" !이름 !기원 !기능 !사용법 |- |rbind() |row bind |데이터를 세로결합한다.(관찰치의 증가) 데이터프레임...) |
잔글 (→데이터 결합) |
||
1번째 줄: | 1번째 줄: | ||
{{R}} | {{R}} | ||
== 데이터 결합 == | ==데이터 결합== | ||
{| class="wikitable" | {| class="wikitable" | ||
!이름 | !이름 | ||
71번째 줄: | 71번째 줄: | ||
| | | | ||
|} | |} | ||
|merge( | |merge(데이터프레임1, 데이터프레임2, | ||
옵션) | 옵션) | ||
|- | |- | ||
79번째 줄: | 79번째 줄: | ||
| | | | ||
|} | |} | ||
<references /> |
2020년 8월 22일 (토) 17:35 판
R언어 공부를 위한 틀 틀:R
데이터 결합
이름 | 기원 | 기능 | 사용법 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
rbind() | row bind | 데이터를 세로결합한다.(관찰치의 증가)
데이터프레임의 변수(열이름)가 다른 경우, 에러가 뜬다. 서로 다른 변수의 데이터를 결합시키기 전에 두 자료의 변수를 일치시키는 사전작업이 필요하다. 아래의 함수를 거치면 변수가 맞춰진 tmp.df1 과 tmp.df2 를 반환한다.[1]사용자 정의함수 = 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) }}
}
|
rbind(데이터프레임1, 데이터프레임2) | ||||||||||||||||
merge() | merge | 데이터를 가로결합한다.(변수의 증가) cbind의 경우, 관찰치 수가 동일하고 관측대상이 동일해야만 적용 가능하여 merge를 쓴다.
고객정보를 더 추가하는 등...
|
merge(데이터프레임1, 데이터프레임2,
옵션) | ||||||||||||||||
- ↑ 양경숙, 김미경(2014). 기초자료분석을 위한 R 입문 p.138