R 섹션에 오신 것을 환영합니다.
정확히 어떤 종류의 데이터로 작업하려고하는지 또는 데이터 비교의 목적을 알지 못합니다.
또한
xdat<-c(10,13,32,17)
ydat<-c(32,17,10,5,19)
> which(xdat %in% ydat)
[1] 1 3 4
> match(xdat,ydat)
[1] 3 NA 1 2
> xdat %in% ydat
[1] TRUE FALSE TRUE TRUE
> unlist(sapply(xdat,function(x) grep(x,ydat)))
[1] 3 1 2
, this short R reference card 다른 작업 기능을 찾는 데 도움이 될 수 :
그러나 여기에 몇 가지 방법이 (약간 다른 출력과) 정보를 찾을 수 있습니다.
어떤 문제를 겪고 있는지, 왜 그런지 알기가 어렵습니다. 예를 들어, 값에 표시된 자릿수를 options(digits=7)
으로 변경하여 원인을 찾을 수 있는지 확인할 수 있습니다.
> round(123.786582307,digits=8)%in%round(123.786582308,digits=8)
[1] TRUE
> round(3.786582307,digits=8)%in%round(3.786582308,digits=8)
[1] TRUE
> signif(123.786582307,digits=11)%in%signif(123.786582308,digits=11)
[1] TRUE
> signif(3.786582307,digits=9)%in%signif(3.786582308,digits=9)
[1] TRUE
친애하는 nadizan 그러나, 나는 당신의 언급 한 기능을 사용, 답변 주셔서 감사합니다 :
또한, 아래의 예를 참조 데이터에 따라
round
및signif
기능을 사용할 수 있습니다. 그래, 그들은 이런 종류의 데이터를 연구하고있다. 내 데이터에서 알 수 있듯이 점 (.) 뒤에 오는 큰 십진수 값을 9 자리 숫자로 포함합니다. 123.786582307과 같은이 값을 123.786582308과 비교하면 데이터가 생성되지 않습니다. 이 문제에 대해 알고 싶습니까? round() 함수를 사용합니다. 불운. 감사합니다. – Muzo583어떻게 데이터를 생성 했습니까? 그 숫자가 어떻게 달라 졌습니까? 그게 당신이 기대하는 것입니까? 일치하는 정확성은 어느 정도입니까? 위의 예제를 보면 여러 가지 다른 일을 할 수 있습니다. @ user6729255 – nadizan
그것이 효과가 있습니다! 고맙다. groundT [, 1 : 3] <-round (groundT [, 1 : 3], digits = 3) # "-1"은 1 : 3 열을 포함 함 lidar [, 13 : 14] <- round 13:14], 자릿수 = 3) <- which (groundar $ X % in % groundT $ X & lidar $ Y % in % groundT $ Y) – Muzo583