0
변수가있는 데이터 프레임이 여러 번 나타나고 두 번째 데이터 프레임에이 변수의 고유 한 수준에 대한 코드가 포함되어 있습니다. 내 데이터 프레임에 코드가 포함 된 열을 추가하고 싶습니다. 예를 들면 다음과 같습니다 :행 이름을 기반으로 데이터 프레임에 열을 병합 및 확장
f1 <- rep(c("A","B","C"), each = 3)
df1 <- data.frame(f1,v1=runif(9))
f1 v1
1 A 0.83523506
2 A 0.13833162
3 A 0.15354252
4 B 0.62046499
5 B 0.27823892
6 B 0.04629973
7 C 0.85571269
8 C 0.10963561
9 C 0.70576556
df2 <- data.frame(f1=c("A","B","C"), n1=c("sp1","sp2","sp3"))
f1 n1
1 A sp1
2 B sp2
3 C sp3
df3 <- data.frame(f1=rep(c("A","B","C"),each = 3),n1=rep(c("sp1","sp2","sp3"),each =3),v1=df1$v1)
f1 n1 v1
1 A sp1 0.83523506
2 A sp1 0.13833162
3 A sp1 0.15354252
4 B sp2 0.62046499
5 B sp2 0.27823892
6 B sp2 0.04629973
7 C sp3 0.85571269
8 C sp3 0.10963561
9 C sp3 0.70576556
df3을 얻기위한 함수를 찾고 싶습니다.
고맙습니다. 완벽하게 작동합니다. – user34771
그것은 작동하는 것처럼 보였지만, 결과를 조사한 후에 나는 df를 병합 한 결과로 나타나는 많은 NA 값을 알아 차렸다. 병합 할 변수의 레벨이 같은 순서가 아니기 때문일 수 있습니까? 적절하게 재조정하는 방법? – user34771
글쎄, 더 긴 예제를 만들어야합니다. 병합은 작동하는대로 정렬을 수행하기 때문에 dfs의 순서는 중요하지 않습니다. 병합 할 변수 (df1, df2, by = "f1")를 병합 할 수 있습니다. – jalapic