如何将 Spearman 相关系数直接保存到 JMP 数据表中(脚本、JSL)你好,
我编写了一个小程序,可以计算 Pearson 系数并将其直接保存到 JMP 表中。
你能帮助修改它以同样的方式保存 Spearman 系数吗? “Spearman”选项对存储没有影响...到目前为止我尝试过的众多选项之一...
谢谢
dt = Open("$SAMPLE_DATA/Body Measurements.jmp");
dt_2 = dt << Multivariate(
Y(
:Name( "Mass" ),
:Name( "Fore" ),
:Name( "Bicep" ),
:Name( "Chest" )
),
Estimation Method( "Row-wise" ),
Matrix Format( "Square" ),
Scatterplot Matrix( 0 ),
Spearman's ρ(1)
);
dt_2= report(dt_2)
[Outline Box("Correlations")][1, 1] << make into data table;
dt_2 << save("C:\....\Spearman.jmp") ;回复:如何将 Spearman 相关系数直接保存到 JMP 数据表中(脚本,JSL)太棒了。
这里为感兴趣的用户提供一些提示:
JMP 仅计算保留字段的相关性。 意外保留字符列的后果:
(1)结构不同:Spearman矩阵保留字符列;皮尔逊矩阵自动过滤掉它们
(2) 缺失值:Spearman不计算系数而是放置缺失值
(3) 列顺序:Pearson:与原始数据集中一样,Spearman:按字母顺序。
回复:如何将 Spearman 相关系数直接保存到 JMP 数据表中(脚本,JSL)我认为应该这样做:
dt = Open("$SAMPLE_DATA/Body Measurements.jmp");
colnameslist=dt<<GET column="" names=""></GET>回复:如何将 Spearman 相关系数直接保存到 JMP 数据表中(脚本,JSL)dt <SPAN class="token operator">=</SPAN> <SPAN class="token function">Open</SPAN><SPAN class="token punctuation">(</SPAN><SPAN class="token string">"$SAMPLE_DATA/Body Measurements.jmp"</SPAN><SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
我有一个更好的主意。 您能否将您的方法推广到“身体测量”数据集中的所有列(请参阅上面的链接)?
如果我们想大胆一些,我们可以假装第一列是我们想要跳过的 ID... 这将是锦上添花......
回复:如何将 Spearman 相关系数直接保存到 JMP 数据表中(脚本,JSL)是否可以概括我的脚本或其中的一部分,以便它可以与您的数据集一起使用?如果您可以在匿名数据(表-->匿名)后发布您的数据集之一,并创建多元脚本,也许我们可以解决一些问题?
回复:如何将 Spearman 相关系数直接保存到 JMP 数据表中(脚本,JSL)无论如何来说:是的,它是方阵。说真的,你做得非常出色。
从技术角度来看:这对我不起作用:我需要这些 Spearman 矩阵来表示多个具有 100 个字段的数据集。
我根本无法每次都手动从三角形更改为正方形。我需要想想别的事情。
@哈德利迈尔斯写道:
嗨,阿吉安,
这需要一些操作,但看看你是否能让这个为你工作:
dt = Open("$SAMPLE_DATA/Body Measurements.jmp");
dt_2 = dt << Multivariate(
Y(
:Name( "Mass" ),
:Name( "Fore" ),
:Name( "Bicep" ),
:Name( "Chest" )
),
Estimation Method( "Row-wise" ),
Matrix Format( "Square" ),
Scatterplot Matrix( 0 ),
Spearman's ρ(1)
);
report(dt_2)
[Outline Box("Correlations")][1, 1] << make into data table;
dt_spearman=Report( dt_2 )
[Outline Box( "Nonparametric: Spearman's ρ" )][Table Box( 1 )] <<
Make Into Data Table;
variables={"Mass","Fore","Bicep","Chest"};
For(i=1,i<=4,i++,
dt_spearman<<ADD rows=""></ADD>
回复:如何将 Spearman 相关系数直接保存到 JMP 数据表中(脚本,JSL)嗨,阿吉安,
这需要一些操作,但看看你是否能让这个为你工作:
dt = Open("$SAMPLE_DATA/Body Measurements.jmp");
dt_2 = dt << Multivariate(
Y(
:Name( "Mass" ),
:Name( "Fore" ),
:Name( "Bicep" ),
:Name( "Chest" )
),
Estimation Method( "Row-wise" ),
Matrix Format( "Square" ),
Scatterplot Matrix( 0 ),
Spearman's ρ(1)
);
report(dt_2)
[Outline Box("Correlations")][1, 1] << make into data table;
dt_spearman=Report( dt_2 )
[Outline Box( "Nonparametric: Spearman's ρ" )][Table Box( 1 )] <<
Make Into Data Table;
variables={"Mass","Fore","Bicep","Chest"};
For(i=1,i<=4,i++,
dt_spearman<<ADD rows=""></ADD>回复:如何将 Spearman 相关系数直接保存到 JMP 数据表中(脚本,JSL)我们已经很接近了。 我很高兴我了解了“大纲框”选项。
不幸的是,输出矩阵形状是“三角形”,而不是“正方形”(根据需要;“对角线”1.0 也因此丢失)。
去那里方便吗?
回复:如何将 Spearman 相关系数直接保存到 JMP 数据表中(脚本,JSL)你好,
这个有作用吗?
dt = Open("$SAMPLE_DATA/Body Measurements.jmp");
dt_2 = dt << Multivariate(
Y(
:Name( "Mass" ),
:Name( "Fore" ),
:Name( "Bicep" ),
:Name( "Chest" )
),
Estimation Method( "Row-wise" ),
Matrix Format( "Square" ),
Scatterplot Matrix( 0 ),
Spearman's ρ(1)
);
report(dt_2)
[Outline Box("Correlations")][1, 1] << make into data table;
Report( dt_2 )
[Outline Box( "Nonparametric: Spearman's ρ" )][Table Box( 1 )] <<
Make Into Data Table;