【问题标题】:How to export results from bootstrapping in R?如何从 R 中的引导导出结果?
【发布时间】:2016-07-22 11:01:22
【问题描述】:

我有一个包含 540 次观察的时间序列,我使用以下代码重新采样了 999 次:

boot.mean = function(x,i){boot.mean = mean(x[i])}
z1 = boot(x1, boot.mean, R=999)
z1
ORDINARY NONPARAMETRIC BOOTSTRAP

Call:
boot(data = x1, statistic = boot.mean, R = 999)

Bootstrap Statistics :
        original        bias    std. error
t1* -0.009381397 -5.903801e-05 0.002524366

尝试导出结果时出现以下错误:

write.csv(z1, "z1.csv")

Error in as.data.frame.default(x[[i]], optional = TRUE, stringsAsFactors = stringsAsFactors) : 
  cannot coerce class ""boot"" to a data.frame

如何将结果导出到 .csv 文件?

我希望获得一个包含 540 个观测值的文件 999 次,目标是应用 pracma 包中的 approx_entropy 函数,以获得 999 个近似熵值并在 Latex 中绘制分布。

【问题讨论】:

  • 提示:查看 str(z1)。
  • 谢谢。我试过write.csv(str(z1), "z1.csv") 但是文件 z1.csv 是空白的。
  • 我的意思是看它的输出。这些值存储在 z1$t 中。
  • 非常感谢。它奏效了。

标签: r export-to-csv statistics-bootstrap


【解决方案1】:

首先,请确保您的示例是可重现的。您可以通过生成一个小的x1 对象或生成一个随机的x1 向量来做到这一点:

> x1 <- rnorm(540)

现在,根据您的问题:

我期望获得一个包含 540 个观察 999 次的文件

但是,这不是您将得到的。您正在生成重采样数据的 mean 的 999 次重复。这意味着每个引导复制实际上都是一个数字。

来自 Herka 的评论:

提示:查看 str(z1)。

函数str 显示z1 对象内的实际数据,没有漂亮的格式。

> str(z1)
 List of 11
 $ t0       : num 0.0899
 $ t        : num [1:999, 1] 0.1068 0.1071 0.0827 0.1413 0.0914 ...
 $ R        : num 999
 $ data     : num [1:540] 1.02 1.27 1.82 -2.92 0.68 ...
 (... lots of irrelevant stuff here ...)
 - attr(*, "class")= chr "boot"

因此,您的原始数据存储为z1$data,而您引导的数据(即每次重采样的均值)存储在z1$t。请注意它如何告诉您每个插槽的尺寸:z1$t 是 999 x 1。

现在,您可能想要做的是将boot.mean 函数更改为boot.identity 函数,该函数仅返回重新采样的数据。它是这样的:

> boot.identity = function(x,i){x[i]}
> z1 = boot(x1, boot.identity, R=999)
> str(z1)
List of 11
 $ t0       : num [1:540] 1.02 1.27 1.82 -2.92 0.68 ...
 $ t        : num [1:999, 1:540] -0.851 -0.434 -2.138 0.935 -0.493 ...
 $ R        : num 999
 $ data     : num [1:540] 1.02 1.27 1.82 -2.92 0.68 ...
(... etc etc etc ...)

您可以使用write.csv(z1$t, "z1.csv") 保存这些数据。

【讨论】:

  • 这正是我想要的。非常感谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-16
  • 1970-01-01
  • 2017-07-26
  • 2018-01-03
  • 2019-09-14
  • 1970-01-01
相关资源
最近更新 更多