반응형
두 개의 열을 기준으로 두 개의 데이터 프레임을 결합하려면 어떻게 해야 합니까?
나는 내가 사용할 수 있다는 것을 압니다.plyr그리고 데이터 프레임을 결합하는 친구들, 그리고merge두 개의 데이터 프레임을 두 개의 열을 기준으로 여러 개의 열로 병합하는 방법을 아직 모릅니다.
자세한 내용은?merge다음 중 어떤 것이 명시됩니까?
By default the data frames are merged on the columns with names they both have,
but separate specifications of the columns can be given by by.x and by.y.
이것은 분명히 다음을 암시합니다.merge둘 이상의 열을 기준으로 데이터 프레임을 병합합니다.설명서에 제시된 마지막 예:
x <- data.frame(k1=c(NA,NA,3,4,5), k2=c(1,NA,NA,4,5), data=1:5)
y <- data.frame(k1=c(NA,2,NA,4,5), k2=c(NA,NA,3,4,5), data=1:5)
merge(x, y, by=c("k1","k2")) # NA's match
이 예는 의 사용을 시연하기 위한 것입니다.incomparables여러 열을 사용하여 병합하는 방법도 보여 줍니다.각 열에 별도의 열을 지정할 수도 있습니다.x그리고.y사용.by.x그리고.by.y.
이것이 도움이 되길 바랍니다.
df1 = data.frame(CustomerId=c(1:10),
Hobby = c(rep("sing", 4), rep("pingpong", 3), rep("hiking", 3)),
Product=c(rep("Toaster",3),rep("Phone", 2), rep("Radio",3), rep("Stereo", 2)))
df2 = data.frame(CustomerId=c(2,4,6, 8, 10),State=c(rep("Alabama",2),rep("Ohio",1), rep("Cal", 2)),
like=c("sing", 'hiking', "pingpong", 'hiking', "sing"))
df3 = merge(df1, df2, by.x=c("CustomerId", "Hobby"), by.y=c("CustomerId", "like"))
가정하면df1$Hobby그리고.df2$like같은 뜻입니다.
조인 명령(dplyr)을 사용할 수도 있습니다.
예:
new_dataset <- dataset1 %>% right_join(dataset2, by=c("column1","column2"))
언급URL : https://stackoverflow.com/questions/6709151/how-do-i-combine-two-data-frames-based-on-two-columns
반응형
'programing' 카테고리의 다른 글
| 푸시 알림에서 앱이 시작/열렸는지 탐지 (0) | 2023.07.09 |
|---|---|
| Git가 향후 파일 수정사항을 무시하도록 하려면 어떻게 해야 합니까? (0) | 2023.07.09 |
| 결합된 ggplot에 대한 공통 범례 추가 (0) | 2023.07.09 |
| MongoDB Java 드라이버에 대한 로깅 구성 (0) | 2023.07.09 |
| Wordpress 사이트 릴리스 관리 전략 (0) | 2023.07.09 |