1

次の形式のベクトルがいくつかあります。

vector1 <- c(42.000, 40.781, 40.625, 40.312, 40.375, 40.344, 39.531, 39.875, 40.344, 39.500, 39.125, 39.062, 39.656)

vector2 <- c(24.625, 25.625, 24.844, 25.250, 26.250, 26.344, 26.250, 26.375, 26.250, 25.812, 27.000, 26.469, 26.781)

これらを最初の値として100から開始し、新しい値ごとに最初の値と新しい値の差をとって、共通のベースに配置したいと思います。

次のコードを使用しました。

i=13 

for (1 in 1:13) {

vector1[i]=(vector1[i]-vector1[i-1])

私は何が間違っているのですか?

4

1 に答える 1

4

何を達成したいのかは明確ではありません。「最初の値として100から開始する」とはどういう意味ですか?

これにより、すべての要素の違いが最初の要素に与えられます。

vector1 <- c(42.000, 40.781, 40.625, 40.312)
vector1-vector1[1]
#[1]  0.000 -1.219 -1.375 -1.688

これにより、最初の要素を最初の要素で割った差が得られます。

(vector1-vector1[1])/vector1[1]
#[1]  0.00000000 -0.02902381 -0.03273810 -0.04019048

これにより、後続の要素に違いが生じます。

diff(vector1)
#[1] -1.219 -0.156 -0.313
于 2012-11-08T12:23:39.777 に答える