2016-10-17 7 views
2

R에서 Riemann Sums를 사용하여 곡선 아래의 대략적인 면적을 찾는 방법을 도와 줄 수 있습니까?R에서 Riemann Sums 계산하는 방법?

우리가 도울 수있는 R 패키지가없는 것 같습니다.

샘플 데이터 :

MNo1 X1 Y1 MNo2 X2 Y2 
1 2981 -66287 1 595 -47797 
1 2981 -66287 1 595 -47797 
2 2973 -66087 2 541 -47597 
2 2973 -66087 2 541 -47597 
3 2963 -65887 3 485 -47397 
3 2963 -65887 3 485 -47397 
4 2952 -65687 4 430 -47197 
4 2952 -65687 4 430 -47197 
5 2942 -65486 5 375 -46998 
5 2942 -65486 5 375 -46998 
6 2935 -65286 6 322 -46798 
6 2935 -65286 6 322 -46798 
7 2932 -65086 7 270 -46598 
7 2932 -65086 7 270 -46598 
8 2936 -64886 8 222 -46398 
8 2936 -64886 8 222 -46398 
9 2948 -64685 9 176 -46198 
9 2948 -64685 9 176 -46198 
10 2968 -64485 10 135 -45999 
10 2968 -64485 10 135 -45999 
11 2998 -64284 11 97 -45799 
11 2998 -64284 11 97 -45799 
12 3035 -64084 12 65 -45599 
12 3035 -64084 12 65 -45599 
13 3077 -63883 13 37 -45399 
13 3077 -63883 13 37 -45399 
14 3122 -63683 14 14 -45199 
14 3122 -63683 14 14 -45199 
15 3168 -63482 15 -5 -44999 
15 3168 -63482 15 -5 -44999 
16 3212 -63282 16 -20 -44799 
16 3212 -63282 16 -20 -44799 
17 3250 -63081 17 -31 -44599 
17 3250 -63081 17 -31 -44599 
18 3280 -62881 18 -38 -44399 
18 3280 -62881 18 -38 -44399 
19 3301 -62680 19 -43 -44199 
19 3301 -62680 19 -43 -44199 
20 3313 -62480 20 -45 -43999 
+0

가보세요 '볼 스타드 (ballstad)'패키지의 '신세대 (sintegral)'기능에서 – Acarbalacar

+0

이 [토론] (https://chemicalstatistician.wordpress.com/2014/01/20/rectangular-integration-a-k-a-the-midpoint-rule/)이 올바른 방향으로 여러분을 안내 할 것입니다. – Bhas

답변

5

확인이 데모 :

> library(zoo) 
> x <- 1:10 
> y <- -x^2 
> Result <- sum(diff(x[x]) * rollmean(y[x], 2)) 

> Result 
[1] -334.5 

체크 this 질문 후, 나는 패키지의 기능 trapz()이 더 효율적 pracma 발견

> library(pracma) 
> Result.2 <- trapz(x, y) 
> Result.2 
[1] -334.5 
+0

고마워요 @ XiaotaoLuo .... 어떤 아이디어, 만약 내가 원하는,이 데이터에 대한 함수를 생성 할 수 있습니다 .. Y = f (x) f (x)는 위의 데이터를 사용하여 생성 된 함수입니다. –

+0

위의 두 개의 데이터가 있습니까? Mno1과 Mno2를 포함합니다. 함수를 생성하는 것이 좋은 선택이라고 생각하지 않습니다. 변수 X의 목록과 응답 값 Y의 목록 만 있으면됩니다. 이렇게하면 모든 곡선에서 대략적인 면적을 계산할 수 있습니다. –

+0

@ XiaotaoLou .. 네, 그렇습니다. MNo1과 Mno2는 단지 관측 번호이며, 이들은 중요하지 않지만 X와 Y 세트는 있습니다. 너의 생각은 잘 받아 줘서 고마워. 그러나 나는 함수를 생성한다고 생각합니다. 그래서 다른 날짜 시간 스탬프에 대해 취한 모든 다른 관측 세트에 대해이 방정식을 일반화 할 수 있습니다. –

관련 문제