我想对总体数据执行(三次)样条插值,以将年度数据“转换”为季度数据。我知道这样做有很多缺陷,但是我需要这样做。

这是我的代码示例(使用通用输入数据):

#--------------spline interpolation

x = c(1973:2014)
population = seq(500000, 600000, length.out = 42)
list = spline(x, population, n = 4*length(x), method = "fmm",
       xmin = min(x), xmax = max(x), ties = mean)

x_spline = list$x
pop_spline = list$y


如何定义样条线是“按季度”计算的,换句话说,是按1973.25、1973.5、1973.75、1974等计算的?抱歉,您不是统计学专家:将年度数据“转换”为季度数据的最佳方法是什么:“ fmm”,“自然”,“定期”,“ monoH.FC”或“ hyman”?假设人口的增长在一年中平均分配。

最好的问候,并在此先感谢!

最佳答案

为什么不使用splinefun

func = splinefun(x=x, y=population, method="fmm",  ties = mean)


然后,定义要预测的点:

func(seq(1973, 2014, 0.25))

08-19 22:16