JMP 中是否有一种简单的方法来汇总和导出表中包含的所有值标签信息(其中多个列可能具有不同的值标签,但并非所有列都具有值标签)? 目前通过对带有值标签的每一列进行重新编码,并进行制作数据表来手动执行此操作。 然后我将所有生成的数据表组合在一起得到一个堆叠表(参见下面的示例文件)。
目前,所有值都是数字,值标签是字符,因此堆叠不是问题。
很高兴获得此答案的交互式和脚本答案,尽管我怀疑它将是脚本。
不确定是否有直接的交互方式来做到这一点,但这里有一种脚本方式:
Names Default To Here(1);
//dt = Current Data Table();
dt = Open("$SAMPLE_DATA/CrabSatellites.jmp");
colNames = dt << Get Column Names("String");
dt_stack = New Table("Stacked_Value_Labels",
New Column("Values", Numeric, "Continuous", Format("Best", 12), ),
New Column("Labels", Character, "Nominal"),
New Column("Rating", Character, "Nominal")
);
For(i = 1, i <= N Items(colNames), i++,
colProp = Arg(Column(dt, colNames[i]) << Get Value Labels);
If(!IsEmpty(colProp) > 0,
For(k = 1, k <= N Items(colProp), k++,
currentColPropExpr = colProp[k];
dt_stack << Add Rows(
{Values = Arg(currentColPropExpr, 1), Labels = Arg(currentColPropExpr, 2), Rating = colNames[i]}
);
);
);
);