在 Julia 中引导加权函数
Bootstraping weighted functions in Julia
我正在尝试使用 Bootstrap.jl
函数来获取加权函数(例如加权中位数)的标准误差 (SE)。
查看下面的 Bootstrap.bootstrap
代码以获得未加权中位数的 SE。
using StatsBase, DataFrames, Bootstrap
v = collect(1:1:20)
bootstrap(median, v, BasicSampling(100))
我现在需要将第二个参数传递给上面的 median
以获得加权 median
的 SE。在 bootstrap
函数之外,这看起来像:
w = collect(0.1:0.1:2)
median(v, Weights(w))
如何将第二个参数传递给 bootstrap
内的 median
函数以包含权重?请注意,bootstrap 重采样应应用于两个向量,为它们绘制相同的索引。
您可以将包含两个向量的 DataFrame
传递给 bootstrap
的第二个参数。然后编写一个匿名函数来使用 median
中的每一列。例如
df = DataFrame(v = collect(1:1:20),
w = collect(0.1:0.1:2))
bootstrap(d -> median(d[!,:v], Weights(d[!,:w])), df, BasicSampling(100))
我正在尝试使用 Bootstrap.jl
函数来获取加权函数(例如加权中位数)的标准误差 (SE)。
查看下面的 Bootstrap.bootstrap
代码以获得未加权中位数的 SE。
using StatsBase, DataFrames, Bootstrap
v = collect(1:1:20)
bootstrap(median, v, BasicSampling(100))
我现在需要将第二个参数传递给上面的 median
以获得加权 median
的 SE。在 bootstrap
函数之外,这看起来像:
w = collect(0.1:0.1:2)
median(v, Weights(w))
如何将第二个参数传递给 bootstrap
内的 median
函数以包含权重?请注意,bootstrap 重采样应应用于两个向量,为它们绘制相同的索引。
您可以将包含两个向量的 DataFrame
传递给 bootstrap
的第二个参数。然后编写一个匿名函数来使用 median
中的每一列。例如
df = DataFrame(v = collect(1:1:20),
w = collect(0.1:0.1:2))
bootstrap(d -> median(d[!,:v], Weights(d[!,:w])), df, BasicSampling(100))