고유 한 벡터화 된 특성과 관련된 R의 좋은 특징 중 하나는 2.2 절의 An Introduction to R에 설명 된 재활용 규칙입니다.표준 재활용 규칙의 구현
동일한 표현에서 발생하는 벡터는 모두 동일한 길이 일 필요는 없다. 그렇지 않은 경우 표현식의 값은 표현식에서 발생하는 가장 긴 벡터와 길이가 같은 벡터입니다. 표현의 짧은 벡터는 재활용 된으로 가장 긴 벡터의 길이와 일치 할 때까지 (아마도 부분적으로) 필요할 수 있습니다. 특히 상수는 단순히 반복됩니다.
대부분의 표준 함수는 이것을 사용하지만, 그렇게하는 코드는 기본 C 코드에 묻혀 있습니다.
함수에 대한 표준 재활용 규칙을 R 코드로 구현하는 표준 방법이 있습니까? 즉,이 a
, b
및 c
아마도 서로 다른 길이와 알 수없는 유형/클래스의 벡터이다
mock <- function(a, b, c) {
# turn a, b, and c into appropriate recycled versions
# do something with recycled a, b, and c in some appropriately vectorized way
}
같은 기능을 부여, 따라 재활용 벡터의 새로운 세트를 얻을 수있는 표준 방법이 표준 재활용 규칙에 맞습니까? 특히, "무언가를하십시오"단계가 적절한 재활용을 수행 할 것이라고 가정 할 수 없으므로 사전에 직접 처리해야합니다.
+1 우리의 아이디어는 본질적으로 동일하지만, 당신은 그것을 핵심으로 파싱하는 것이 더 낫습니다. (당신의 대답을보고, 나는 데이터를 구성하는 데 약간의 어려움이있었습니다. 프레임 예제!) –
원래 답변을 게시했을 때 상당히 달랐지만 이제는 이름과 거의 동일합니다. – baptiste
그래, 알겠지만 실질적으로 유사한 버전이 몇 분만에 서로의 기능을 사용할 수 있습니다. 둘. –