找出相关系数并将其放入表中我创建了 2 个文件来演示我的问题。
在“测试 1”中,我有来自 4 个人的数据(即 AAAA、BBBB、CCCC、DDDD)。 每个人对一个“估计”问题有 8 个回答,对一个“真实”问题有 8 个回答。 一半的响应来自域“0”,另一半来自域“1”。
我想找到每个领域中每个人的估计和真值问题之间的相关性。 我知道我可以通过转到分析/多元方法/多元并将估计和真值问题放在“Y,列”框中,并将“ID”和“域”放在“依据”框中来做到这一点。
问题是我希望此分析的输出位于另一个 JMP 表中,以便我可以对相关性进行进一步分析。 例如,我想知道在每个领域中,普通人在估计和真实之间的相关性是什么。 为此,我需要一个看起来像“测试 2”文件中的数据的文件。
你能告诉我一种从测试 1 数据中自动生成“测试 2”数据的方法吗? 我无法手动执行此操作,因为我正在使用的实际数据集非常庞大。
回复:找到相关系数并将其放入表中谢谢你,伊恩。 这非常有效。回复:找到相关系数并将其放入表中您可以绘制“makeCombinedDataTableMessage”。 在 JSL 中,类似于:
NamesDefaultToHere(1);
// Data table
dt = DataTable("Test 1.jmp");
// Multivariate
m = dt << Multivariate(Y( :Estimate, :Truth ), By( :ID, :Domain ));
// 'm' is a list because of the 'By' variable: Get the report for the first level
mRep = Report(m[1]);
// Get the correlation matrix into a table dt2 (for all levels)
dt2 = mRep[MatrixBox(1)] << makeCombinedDataTable;
// Manipulate dt2 to remove redundancy
dt2 << setName("Correlation Coefficients For By Groups");
dt2 << deleteColumns({3, 4});
r2del = dt2 << getRowsWhere(:Truth == 1);
dt2 << deleteRows(r2del);
Column(dt2, "Truth") << setName("Correlation Coefficient")