创建 Bootstrap 模拟列时 JMP 公式出错我正在处理一个包含大量缺失值和少量观测值的数据集,这使得建模变得困难。为了解决这个问题,我想使用自助法重采样。数据集中的一列包含附件 Excel 文件中所示的值,我想用包含 10,000 个观测值的模拟数据(列名:Sim_Y1_Liability)替换这一列。我使用了以下两个公式来生成模拟值,但是当我输入这些公式时,JMP 返回错误。请问有人知道可能是什么原因导致这个错误以及如何解决吗?
JMP一级方程式赛车:
随机选择(
0,
2239500,
929880,
2192100,
2806020,
0,
3387600,
109080,
1057860,
441840,
880950,
1753830,
0,
968070,
1990950,
295410,
1083420,
0,
235770,
616500,
0,
279120,
0,
591090,
35100
)
JMP Formula 2:
随机样本(
{0, 2239500, 929880, 2192100, 2806020, 0, 3387600, 109080, 1057860, 441840,
880950、1753830、0、968070、1990950、295410、1083420、0、235770、616500、
0, 279120, 0, 591090, 35100}
)[1]
数据融合与清理回复:创建 Bootstrap 模拟列时 JMP 公式错误JMP 中没有这两个函数。您可以在脚本索引或 JSL 语法参考中找到可用的 Random 函数(JSL 语法参考 > JSL 函数、运算符和消息 > 随机函数) 。您很可能可以将值列表与 Random Integer 结合使用,从而获得一个随机整数(jsl.jmp.com)。
回复:创建 Bootstrap 模拟列时 JMP 公式错误感谢你为了这评论。是的,I 能产生随机的数字使用这技术你建议。然而,I 是具体来说感兴趣的在创建a 引导模拟柱子和10,000观察为了这数据集。I 知道I 能做这经过选择这分配,点击意思是, 和然后申请引导程序。是那里一个选择方法可用的?
回复:创建 Bootstrap 模拟列时 JMP 公式错误试试这个 JSL 脚本,看看能不能满足你的需求:
Names Default To Here( 1 );
dt = data table("Sample Data File_Sheet1");
dt << Distribution(
Continuous Distribution(
Column( :CPF_Payout_USD ),
Process Capability( 0 ),
Fit Normal
)
);
obj = current report();
obj["Fitted Normal Distribution",Number Col Box( 1 )] <<
Bootstrap(
10000,
Fractional Weights( 1 ),
Split Selected Column( 1 )
);
回复:创建 Bootstrap 模拟列时 JMP 公式错误你好@Madhu_Acharyya ,
欢迎加入社区!
我的回答(以及问题!)与此完全不同:
- 即使观测数据量不大,也能建立可靠的模型。数据集的质量和信息量比数据数量更重要。
- 使用引导抽样来“人为地”扩展数据集并不能帮助你更轻松地拟合模型。它只会重复并强化数据中已存在的模式,并给你一种对模型充满信心的(虚假)印象,导致模型/性能指标虚高,置信区间“人为地缩小”。
- 根据您提供的文件,我不清楚您的意图。我原本以为您想根据年份预测CPF响应(即进行时间序列分析和/或时间序列预测),但您的第二个模拟文件显示的列却截然不同。您能否解释一下?
如果您打算进行时间序列分析,我建议您先尝试一些简单的选项,例如窗口宽度为 3 或 5 个点的简单移动平均法,因为这种简单的模型类型仍然有助于理解和预测数据中的趋势:

还有更高级的方法和模型,如 ARIMA / Seasoned ARIMA / ...,但需要更多假设,并且需要更好地定义季节性和其他模型参数。
希望这个回答对讨论有所帮助。