2014-12-13 9 views
0

R의 lchoose 함수에 대한 나의 이해는 단순히 lchoose (a, b) = log (choose (a, b))입니다.lchoose function in R

temp <- 7.9999993 
k <- 8 
choose(temp,k) 
[1] 0 
lchoose(temp,k) 
[1] 0 
log(choose(temp,k)) 
[1] -Inf 

그래서 lchoose이 기능을 선택 출력의 로그인이되지 않습니다 그러나 나는 것을 발견했다. 왜 이런 일이 발생합니까? 이산 경우

답변

1

(즉 이산 n) choose(n,k)n 요소 세트와 구별 K 요소 서브 세트의 수를 계산하므로 k > n 경우, 대응하는 더 많은 요소를 집합의 다음 계산되는 집합 세트. 그러한 하위 집합이 없기 때문에 대답은 0입니다.

일반적으로 실수 인 n의 경우 함수를 계산할 수 있지만 함수는 여전히 이산 값보다 동일한 의미를 가져야하므로 k>n의 경우 함수의 값은 0입니다. 실수가 n (see here) 인 이항 함수의 정의를 보면 대답은 0이 될 것입니다 만 직관적 인 방식으로 설명하려고합니다.

+0

그것은'? lchoose'가 말하는 것이 아닙니다. –

+0

@BondedDust 무엇을 의미합니까? – kolonel

+0

도움말 페이지에 n이 실수이고 k는 정수임을 나타냅니다. –