簡體   English   中英

如何從 R 輸出繪制直方圖?

[英]How to plot histogram from the R output?

我試圖從不是數據框的 R 輸出繪制直方圖。 下面是我的代碼和輸出。

x <- replicate(1000, 
               {y <- rpois(200, 1)
               {lambda0 <- 1
for(i in 1:1) 
  {
  if( i == 1 ) cat( sprintf("%15s %15s %15s %15s\n", "LogL", "Score", "Information", "New Estimate"))
  logL        <- sum((-lambda0) + y*(log(lambda0)))
  score       <- sum((y/lambda0)-1)
  information <- sum(y/(lambda0)^2)
  lambda1      <- lambda0 + score/information
  cat( sprintf("%15.4f %15.4f %15.4f %15.5f\n", logL, score, information, lambda1))
  lambda0 <- lambda1
}  
} 
               })

下面是我的輸出

在此處輸入圖片說明

我正在嘗試從輸出中獲取新的估計值並創建直方圖。 你能幫忙嗎?

謝謝你。

您需要在循環期間存儲 New Estimate 的值。 這樣您就可以在循環完成后檢索結果。 通常在使用循環時,您預先指定一個變量,您可以在其中保存每次迭代的結果。 例如:

numbers <- 1:3

result <- list(length = length(numbers)

for (i in seq_along(numbers){

result[[i]] <- numbers[[i]] + 1

}

在這個例子中,有一個由三個數字組成的向量,你想給每個數字加一個並保存結果。 您可以通過創建長度為 3 的列表(添加長度更好,但不是必需的)來完成此操作,並且對於每個第i次迭代,您將結果保存在列表的第i個元素中。

完成循環后,您可以從result變量中檢索結果。 您可以使用方括號檢索第i個結果: result[[i]]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM