如果有任何简单的通配符脚本。想要使用通配符选择列好的,有没有一种简单的通用方法可以在 jmp 脚本中使用通配符? 我需要在 COLUMN COMBINE 推荐中列出以“Row”开头的所有列(如 Row1 Row2 Row3...)。 谢谢。
脚本编写回复:如果有任何简单的通配符脚本。想要使用通配符选择列你可以通配符,但它只会得到第一个。
dt = open("$SAMPLE_DATA\Big Class.jmp");
Column(dt, "?eight"); //Column( "height" )
虽然这是一个足够简单的循环
partial_column = function({searchtxt, dt=currentdatatable()},
{default local},
allCols = dt << GetColumnNames("String");
filtered_list = {};
for(i=1, i<=nitems(allCols), i++,
if(isstring(regex(allCols[i], searchtxt)),
insert into(filtered_list, allCols[i]);
);
);
return(filtered_list);
);
partial_column(".eight"); // {"height", "weight"}回复:如果有任何简单的通配符脚本。想要使用通配符选择列我想将 Row1 组合到 Row5(我希望它自动化,因为我可能在真实数据集中有 Row100),我不能像这样只是通配符? 如果我添加循环,不知道把它放在哪里。
EG 数据集;
ID Row1 Row2 Row3 Row4 Row5 ALL
1 a b c d e abcde
我的代码:
数据表(“栈排序的转置”)<<
合并列(
部分列(“行?”),
列名( "ALL" ),
分隔符(“”)
);
回复:如果有任何简单的通配符脚本。想要使用通配符选择列你也许可以使用JMP 模式对于这个任务。
回复:如果有任何简单的通配符脚本。想要使用通配符选择列两件事,您需要将 Columns() 放在列周围,正则表达式的通配符是“。”
所以你可能需要做这样的事情
Data Table( "Transpose of stack sort") <<
Combine Columns(
Columns(partial_column("Row.")),
Column Name( "ALL" ),
Delimiter( " " )
);回复:如果有任何简单的通配符脚本。想要使用通配符选择列这听起来是解决方案,但是我在运行它时遇到了这个错误。
回复:如果有任何简单的通配符脚本。想要使用通配符选择列不知道。这对我有用。
Names default to here(1);
dt = New Table( "Untitled 231",
Add Rows( 1 ),
New Column( "ID", Set Values( [1] )),
New Column( "Row1", character, Set Values( {"a"} )),
New Column( "Row2", character, Set Values( {"b"} )),
New Column( "Row3", character, Set Values( {"c"} )),
New Column( "Row4", character, Set Values( {"d"} )),
New Column( "Row5", character, Set Values( {"e"} )),
);
partial_column = function({searchtxt, dt=currentdatatable()},
{default local},
allCols = dt << GetColumnNames("String");
filtered_list = {};
for(i=1, i<=nitems(allCols), i++,
if(isstring(regex(allCols[i], searchtxt)),
insert into(filtered_list, allCols[i]);
);
);
return(filtered_list);
);
dt << Combine Columns(
Columns(partial_column("Row.")),
Column Name( "ALL" ),
Delimiter( " " )
);