2011-09-09 22 views
-2

ここでは、2つのベクトルに積分の計算を実装するのを手伝っていきたいと思います。私はRを基準に積分計算のページをチェックしました。しかし、私は数学の訓練がほとんどないので、私はまだそれを自分で行うことはできません。積分の計算方法R

私の目的は、この文のアイデアを実装することです。「速度マップを位置別にプロットすると、遺伝子地図はちょうどこのプロットの積分値になります。これは私が変数(レート、ポジション)を持っていることを意味し、各ポジションは独自のレートを持っています。私は、各ポジションのレートの積分を計算したいと思います。ここでは、位置は単調増加しています。

この作業は、数学的計算をよく理解している人にとってはあまり複雑ではありません。だから、それについての指示や指示を私に与えてもらえますか?

ありがとうございます。

# here I make dummy data 

position <- c(2,34,58) 
rate <- c(14, 20, 5) 
+3

のErm、 Riemann積分を意味する「積分」(http://en.wikipedia.org/wiki/Integral)の場合、それは関数用です連続的(または、技術的には、不連続点が数えられる関数)である。だから、私はあなたの質問が尋ねられたように多くの意味を持たないことを恐れている。 –

+2

この宿題はありますか? –

+0

宿題ではありません。それは実際に仕事です。私は私の研究のためにそれが必要です。お返事をありがとうございます。 –

答えて

3

数学では、積分は曲線の下の面積です。あなたの例では、位置と速度によって定義されるカーブの下の領域が必要です。

position <- c(2,34,58) 
rate <- c(14, 20, 5) 

plot(position, rate, type="l", ylim=c(0, 25)) 

enter image description here

あなたは台形法則使用して、手で曲線下面積を計算することができます。

32*17 + 24*12.5 = 844 

または、プログラムでそれを行うには:

AUC <- function(x, y){ 
    sum(diff(x)*rollmean(y,2)) 
} 

AUC(position, rate) 
[1] 844 
+0

ありがとう、アンドリー。私はこれが私が期待したものではないことを知っている。でも、誤解や悪い表現があると思います。 –

+6

@ jianfeng.maoそれであなたは何を期待していますか? – Andrie

+0

@Andrie、私の質問で私を助けてくれますか:(http://stackoverflow.com/questions/42095957/coding-a-multiple-integral-function) – rnorouzian

関連する問題