나는 간단한 R 질문이 있습니다. 두 개의 데이터 프레임이 있습니다. 첫 번째 것은 가능한 모든 해를 포함합니다. NA에 두 번째 열을 지정합니다. 두 번째 데이터 프레임에는 가능한 연도의 하위 집합 만 있지만 두 번째 열의 실제 값은 있습니다. 두 데이터 프레임을 결합하고 싶습니다. 좀 더 구체적으로 말하자면, 나는 일년에 한 해를 맞추기를 원하고, 두 번째 해가 정확한 해가되면 첫 번째 NA를 두 번째 해의 값으로 바꿉니다.data.frame matching
다음은 예제 코드입니다.
one <- as.data.frame(matrix(1880:1890, ncol=2, nrow=11))
one[,2] <- NA
two <- data.frame(ncol=2, nrow=3)
two[1,] <- c(1880, "a")
two[2,] <- c(1887, "b")
two[3,] <- c(1889, "c")
난 C "최초 행의 값을 가지고"는 "여덟 번째 행, 두 번째 열이되도록 하나의 두 번째 열"B "및 열 번째 행에, 두 번째 열을 얻고 싶은. "
위의 코드를 더 편하게 만들어보세요. merge
은 (
one[,1]==two[,1] -> test
그러나 테스트는 값 1880과 1887 ...
을 확인, C '의 두 요소 (1880, "A")'벡터는 하나 개의 클래스를 가질 수 있기 때문에 문자입니다. 아래에서 볼 수 있듯이 병합은 작동하지만 어쩌면 올해 변수에 대해 일관된 클래스를 유지하려고 할 수 있습니다. 또한 data.frame을 만들기위한 올바른 구문이 아닙니다 (ncol, nrow는 사용하지 않습니다). – Frank