0

過去 4 年間の Google の年間収益をダウンロードしました:

library(quantmod)
getFinancials(GOOG)
df<-viewFinancials(GOOG.f, type='IS', period='A',subset = NULL)['Net Income',]
df<-(as.data.frame(df))

データの表示方法は次のとおりです。

2015-12-31 16348
2014-12-31 14136
2013-12-31 12733
2012-12-31 10737

このデータを、次の 10 年間の平均線形成長として「外挿」したいと思います。次のようになります。

ここに画像の説明を入力.

Excel では、上記のデータを貼り付け、古いものから新しいものへと並べ替え、それを選択し、さらに 10 行にわたって選択範囲を「引き伸ばす」だけで、次の結果が得られます。

12/31/2012  10737
12/31/2013  12733
12/31/2014  14136
12/31/2015  16348
12/31/2016  18048
12/31/2017  19871
12/31/2018  21695
12/31/2019  23518
12/31/2020  25342
12/31/2021  27166
12/31/2022  28989
12/31/2023  30813
12/31/2024  32636
12/31/2025  34460

Rで同じこと(またはそれに近いこと)を行うにはどうすればよいですか?

4

1 に答える 1

3

R ではいくつかの追加手順が必要です。サンプル データは次のとおりです。

date<-as.Date(c("2015-12-31", "2014-12-31", "2013-12-31", "2012-12-31"))
value<-c(16348, 14136, 12733, 10737)

将来に向かって直線的に成長すると仮定します。線形回帰を実行するには、lm コマンドを使用します。変数「モデル」はフィットを格納します。

#fit linear regression
model<-lm(value~date)

10 年先を見越して、次の 10 年間の日付シーケンスを作成し、データフレームとして保存します (predict コマンドに必要)。

#build predict dataframe
dfuture<-data.frame(date=seq(as.Date("2016-12-31"), by="1 year", length.out = 10))
#predict the futurne
predict(model, dfuture, interval = "prediction")

上記のモデルは線形成長を想定しています。成長がどうなるかについて別の予測がある場合は、lm 式を修正するか、nlm 式を使用する必要があります。利用可能なデータの範囲外で予測を行うことに関する警告は省略します。

于 2016-04-25T18:58:55.373 に答える