【发布时间】:2015-10-14 21:44:37
【问题描述】:
我正在尝试为我的模型获取(引导的)输入数据。
源文件:https://www.dropbox.com/s/dudzxhozr50uhr7/EddyData_2010.csv?dl=0
library("dplyr")
library("readr")
library("reshape2")
library("ggplot2")
sub <- read_csv("EddyData_2010.csv",
col_types = list(col_integer(), col_integer(), col_double(),
col_double(), col_double(), col_double(),
col_double(), col_double(), col_double(),
col_double(), col_double(), col_double()),
col_names = c("Year", "DoY", "Hour", "NEE", "LE", "H", "Rg",
"Tair", "Tsoil", "rH", "Ustar", "VPD")) %>%
filter(DoY == 170) %>%
mutate(hour = 1:48) %>%
select(NEE:hour)
# Number of resampling
n_resempling <- 1000
result_resampling <- NULL
# Do the resampling
for (i in 1:n_resempling) {
result_resampling <- sample(48, 48, replace = T) %>%
slice(sub, .) %>%
mutate(resempling_number = i) %>%
bind_rows(. , result_resampling)
}
这会生成一个带有替换的重采样,例如
输出显示在一天的 48 个半小时内重新采样了 1000 个引导程序并进行了替换。
这是我的问题:
带替换的重采样在一天中随机混杂了半个小时,没有任何控制。例如,我不想把晚上的半小时和白天的半小时混为一谈。结果导致事后进行奇怪的计算。是否有可能以我定义允许和不允许的方式来编码?
例子:
- 只允许从晚上 10 点到下午 5 点重新采样
- 夜间时间不能与白天时间重新采样(反之亦然)
【问题讨论】:
-
在重新采样之前过滤您的原始数据。只想在上午 10 点到下午 5 点之间重新采样?过滤您的数据,使其仅包含该窗口中的时间,然后重新采样。只想要白天的时间?仅将您的数据过滤到一天,然后重新采样...
标签: r sampling statistics-bootstrap