15

RでGeometric Progressionにある一連の数字を生成するにはどうすればよいですか? たとえば、シーケンスを生成する必要があります: 1、2、4、8、16、32 など....有限値と言うまでは?

4

3 に答える 3

10

これが私がすることです:

geomSeries <- function(base, max) {
    base^(0:floor(log(max, base)))
}

geomSeries(base=2, max=2000)
# [1]    1    2    4    8   16   32   64  128  256  512 1024

geomSeries(3, 100)
# [1]  1  3  9 27 81
于 2012-06-19T05:37:15.063 に答える
7

なぜ 2^(0:n) と入力しないのですか? たとえば、2^(0:5) は 1 から 32 までを取得します。次のように変数に割り当ててベクトルをキャプチャします: x <- 2^(0:5)

于 2012-06-19T05:32:04.853 に答える
4

次の数学関数を使用して、等比数列の任意の項を見つけることができます。

期間 = 開始 * 比率 ** (n-1)

ここで:

term = 必要な数列の項
start = 数列の最初の項
ratio = 公比 (数列を定義する倍数)
n = 必要な数列の数

この情報の使用、任意の開始と比率の幾何学的シーケンスの任意のサブセットを提供する R の関数を作成します。

#begin = beginning of subset
#end = end of subset

geomSeq <- function(start,ratio,begin,end){
  begin=begin-1
  end=end-1
  start*ratio**(begin:end)
}

geomSeq(1, 2, 1, 10)
# [1]   1   2   4   8  16  32  64 128 256 512

geomSeq(10,3,1,8)
# [1]    10    30    90   270   810  2430  7290 21870

geomSeq(10,3,4,8)
# [1]   270   810  2430  7290 21870

等比数列の詳細

于 2014-10-31T19:34:39.877 に答える