根据标题中包含的单词选择列我有一个想要执行的分析,但我需要根据标题中包含的单词选择几列,然后才能执行此操作,目前我手动执行此操作,但这非常慢,如果我'我不小心。
在图像示例中,我想选择以“什么颜色”开头的 2 列,但不选择其他 4 列。 它们可以分布在其他列中,并且每个实验的数量会有所不同。 一旦选择,我就可以提取它们并进行分析。
这需要自动完成,不需要任何用户输入,我找不到任何执行此操作的 jsl,但我确信它一定存在,只是我无法找到它或不知道正确的脚本术语。

问候
大卫
自动化和脚本编写回复:根据标题中包含的单词选择列谢谢!回复:根据标题中包含的单词选择列Contains() 函数不返回 0 或 1 的布尔值,它返回找到比较的字符位置。
尝试使用
Contains( colList[i], "N" ) > 0
回复:根据标题中包含的单词选择列我尝试使用此脚本来选择列名称中间包含字符串的列。当我将“P”或“PN”放入 contains() 中时,它可以工作,但当我插入“N”或“NP”或“NP3”时,它不起作用。
谢谢
For( i = 1, i <= N Items( colList ), i++,
If(
// Put in any selection criteria you want
//Left( colList[i], 2 ) == "PN" ,
// or it could be
Contains( colList[i], "N" ) == 1
,
Column( dt, colList[i] ) << set selected
)
);
回复:根据标题中包含的单词选择列非常感谢,这很完美
回复:根据标题中包含的单词选择列考虑到“无用户输入”的要求,我认为这不会增加任何内容。 但我想借此机会提到列过滤在交互工作时非常方便(并且很容易被忽视)。 有时人们使用脚本是因为他们认为通过用户界面“很难”。
“Filter Col Selector”也是可编写脚本的:
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
New Window( "Filter Col Selector Example", fcs = Filter Col Selector( DataTable("Big Class") ));
// See what messages the 'Filter Col Selector' understands
ShowProperties(fcs);
// Try it out
Print(fcs << GetItems);
Wait(3);
fcs << NameContains("ei");
Print(fcs << getItems);回复:根据标题中包含的单词选择列这是一种非常简单的方法来满足您的要求,并且可以扩展到更复杂的要求
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
colList = dt << get column names( string );
dt << clear column selection;
For( i = 1, i <= N Items( colList ), i++,
If(
// Put in any selection criteria you want
Left( colList[i], 2 ) == "PN" ,
// or it could be
// contains( colList[i], "PN") == 1,
Column( dt, colList[i] ) << set selected
)
);
If( N Items( dt << get selected columns ) > 0,
dtSelected = dt << subset( selected rows( 0 ), selected columns( 1 ) )
);