친구가 벡터의 고유 멤버를 결정할 때이 함수를 작성했습니다. 나는이 한 줄이 무엇을하는지 (정신적으로) 알아낼 수 없으며 그것은 기능의 핵심이다.이 함수에서 &를 사용하는 데 문제가 없음
논리적 = 논리적 & X =의 X [i]를
이누군가가 나에게 설명 할 수 있습니다! 어떤 도움을 크게
myUniq <- function(x){
len = length(x) # getting the length of the argument
logical = rep(T, len) # creating a vector of logicals as long as the arg, populating with true
for(i in 1:len){ # for i -> length of the argument
logical = logical & x != x[i] # logical vector = logical vector & arg vector where arg vector != x[i] ??????
logical[i] = T
}
x[logical]
}
내가 알아낼 수 없습니다이 줄을 감사합니다?
감사합니다, 톰
당신은 그것을 못을 박았다! 나는 그것을 지금 완벽하게 이해한다 !! 일을하는 방법에 관한 이야기지만, 우리는 독특한 기능의 사용을 피하려고했습니다. 내가 이해 한 루프를 사용했지만 그의 방법은 사용하지 않았다. – traggatmot
'for (i in 1 : len)'을'for (i in 1 : len) if (logical [i]) '로 바꾸면 같은 순서가 생기고 (함수를보다 효율적으로 만들 수 있습니다). 일단 중복 된'a'가 모두 제거되면'a''를 다시 볼 필요가 없습니다. –