세 개의 매개 변수가있는 삼각형 분포에서 숫자를 생성하고 싶습니다 : a, b, c 및 c는 (a + b)/2로 정의됩니다. 의 내가 벡터 X 있다고 가정 해 봅시다 :삼각형 분포의 무작위 샘플 : R
x <- c(1,-1,2,-2,3,-3,4,-4,5,-5,11,-11,12,-12,13,-13)
내가 벡터의 x 음수가있는만큼 새로운 값을 생성합니다. 그래서 나는 음의 값을 삼각형 분포에서 생성 된 숫자로 대체 할 수 있습니다.
경고 메시지 : 1 : 나는 경고 메시지로 분명히
가 작동하지 않습니다에서 경우 (A> C | B < c) 반환 (대표 (NaN의 시간 =2 : if (a! = c) {: 조건의 길이가 1보다 크고 첫 번째 요소 만 사용됩니다. 3 : p [i] * (b - a) : 길이가 긴 객체 길이가 더 짧은 객체 길이의 배수가 아닙니다교체 할 항목 수가 대체 길이의 배수가 아님 5 : In (i - 1) 1 - p [j]) * (b - a) : 길이가 긴 객체 길이가 더 짧은 객체 길이의 배수가 아님 6 : p [j] < - b - sqrt ((1 - p [j]) * B - A) * (B - C)) : 대체 할 항목의 수library(triangle) c = abs(x[x<0])/2 sample <- rtriangle(length(a[which(a<0)]), 0, abs(x[x<0]),c)
rtriangle
이후
매개 변수 'a'는 0이지만 'b'와 'c'는 하나의 숫자가 아닙니다. 어떻게 샘플을하려고하는지 명확하지 않습니다. –
'rtriangle'의 도움으로부터 :'a, b, c는 rtriangle의 경우를 제외하고 적당한 길이의 벡터 일 수 있습니다 .' –
벡터를 얻고 싶습니다. (벡터 길이는 벡터의 음수에 해당합니다. * x **) 삼각형 분포로부터 샘플링 된 숫자. _a_ (_a = 0_)에서 _b_ (_b는 벡터 _ ** x **의 음수 요소의 절대 값이므로 _c_ b = 2_)의 범위에서 샘플링하려고합니다. – marianess