1

ここに画像の説明を入力

線形プロットで積分値を計算したいと思います。理解を深めるために、写真を見てください。全体の面積が 1 だとしましょう。ある部分の値を知りたいのです。たとえば、すべてが月を参照し、A が最大で 24 を表す場合、全体の 100% の何% が 10 か月目と 11 か月目にあるのかを知りたいとします。 F(x) - F(x-1) 次のコードについて考えました:

a <- 24
tab <-matrix(0,a,1)
tab <-cbind(seq(1,a),tab)
tab<-data.frame(tab)

#initialization for first point
tab[1,2] <- (2*tab[1,1] / a - tab[1,1]^2 / a^2)

#for loop for calculation of integral of each point - integral until to the area
for(i in 2:nrow(tab))
{tab[i,2] <- (2*tab[i,1] / a - tab[i,1]^2/ a^2) - sum(tab[1,2]:tab[i-1,2])}
#plotting
plot(tab[,2], type="l")

プロットを見ると、混乱します。これを正しく処理する方法はありますか?

4

2 に答える 2

5

ベース R 関数integrate()でこれを行うことができます。

f <- function(x, A) 2/A - x / A^2

integrate(function(x)f(x, 24), lower=10, upper=11)

0.06510417 with absolute error < 7.2e-16
于 2012-06-21T20:12:47.107 に答える
1

数式を直接使用する:

a <- 24                          # number of divisions
x <- c(seq(1,a))                 # 
y <- x*2/a - x^2/a^2             # F(x)
z <- (x*2/a - x^2/a^2) - ((x-1)*2/a - (x-1)^2/a^2) # F(x) - F(x-1)

その後、バインディングを行います。

> sum(z)
[1] 1
于 2012-06-21T20:24:08.157 に答える