简单矩阵创建问题我有一些代码,我需要传递一个矩阵与一个值突出显示表格框中的一行:
nw = new window("test",
tb = table box(
string col box("Col1", {"aa", "bb", "cc"}),
number col box("Col2", [1, 2, 3])
)
);
rm = [2];
tb << set selected rows(rm);
要突出显示的行号是变量。 我想使用最简单的语法来使用此变量创建行号矩阵。 这些方法不起作用:
a = 2; // Need a matrix holding this variable value
b = [a]; // Doesn't work
c = [expr(a)]; // No
d = [eval(a)]; // No
e = [eval(expr(a))]; // No
以下是我提出的方法:
// Works but so complicated...
f = eval(parse(evalinsert("[^a^]"))); // Yes
// Works too
g = [1];
g[1] = a; // Yes
我缺少一个更简单的单线程吗?我只是想动态创建像[2]这样的矩阵。
回复:简单矩阵创建问题哈 - 完美!谢谢Jeff。
回复:简单矩阵创建问题我认为Matrix()函数可以满足您的需求:
//:*/
a=2;
b=matrix(a);
/*:
[2]
在您的原始示例中:
a = 2;
nw = New Window( "test",
tb = Table Box(
String Col Box( "Col1", {"aa", "bb", "cc"} ),
Number Col Box( "Col2", [1, 2, 3] )
)
);
rm = Matrix( a );
tb << set selected rows( rm );回复:简单矩阵创建问题你好
我如何反向执行此概念?
a = [2]
b = 2
?
回复:简单矩阵创建问题最初的过程是从标量制作矩阵,所以我猜您在问如何从矩阵返回标量。使用下标访问矩阵中的任何元素。
// make 1x1 matrix (one element)
a = [2];
// obtain element with a script using row-wise index or [row,col] coordinate
b = a[1];
b = a[1,1];
回复:简单矩阵创建问题这也适用:
a = 2;
// Concat scalar with empty matrix
b = a || [];
// Same, but in place
a ||= [];
Show(a, b);
/*:
a = [2];
b = [2];