매주 업데이트되는 Excel 테이블에서 열 2-무한대에서 스택에 대한 JMP 스크립트매주 수동으로 업데이트하는 Excel 테이블이 있습니다. 다음으로 JMP에서 이 테이블을 열고 2열부터 모든 열을 쌓습니다. 매주 업데이트할 때마다 초기 테이블에 더 많은 열을 추가합니다. 저는 최근에 JMP Scripting 클래스 소개를 들었고 매번 처음부터 다시 쌓는 대신 이 프로세스를 약간 자동화하려고 합니다.
다음은 스택을 수행하기 전에 JMP에서 표가 어떻게 보이는지 보여줍니다.

다음과 같은 스크립트를 통해 Excel 테이블을 JMP로 가져오는 방법을 알고 있습니다.
Open(
"Drive:\Folder\File.xlsx",
Worksheets( "Data" ), // etc.
그러나 질문이 있었던 곳은 JMP 스크립트를 변경하여 스택 열 2에서 끝까지 요청하는 방법입니다.
JMP에서 수동 스택을 수행하고 소스 스크립트를 보면 다음이 있습니다.
Data Table( "Data" ) << Stack(
columns(
:Name( "8/23/2021" ),
:Name( "08/30/2021" ),
:Name( "09/06/2021" ),
:Name( "09/13/2021" ),
:Name( "09/20/2021" ) // etc.
),
Source Label Column( "Failure Group Name" ),
Stacked Data Column( "% Share, Week of" )
);
그리고 나는 For(내가 사용할 수 있는 함수의 프레임워크를 가지고 있다:
For( c = 2, i <= N Col(), c++,
//body//하지만 그것들을 어떻게 조합해야 할지 잘 모르겠습니다. 어떻게 든 For( 명령 안에 Stack( 명령을 넣습니까?
도와줄 수 있는 사람에게 감사합니다!
데이터 테이블스크립팅Re: 매주 업데이트되는 Excel 테이블에서 열 2-무한대에서 스택으로 JMP 스크립트Stack 플랫폼을 사용하면 columns() 인수에서 열 목록을 사용할 수 있다고 생각합니다.
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Semiconductor Capability.jmp");
cols_to_stack = {"NPN1", "PNP1", "PNP2"};
dt_stacked = dt << Stack(
columns(cols_to_stack),
Source Label Column("Label"),
Stacked Data Column("Data"),
Drop All Other Columns(1)
);따라서 << Get Column Names(String)를 사용하여 Excel 파일에서 만든 데이터 테이블에서 가지고 있는 열 이름 목록을 가져온 다음 Remove From()으로 첫 번째 열을 삭제합니다.
Names Default To Here(1);
dt = Open(
"$SAMPLE_IMPORT_DATA/Team Results.xlsx",
Worksheets("Ungrouped Team Results"),
Worksheet Settings(Headers Start on Row(3), Data Starts on Row(4))
);
//all columns
col_names = dt << Get Column Names("String");
//drop first column
Remove From(col_names, 1);
//stack with remaining, won't work exactly like this with this example data, as data types aren't same
//dt_stacked = dt << Stack(...)도움말 / 스크립팅 색인을 참조하고 여기에서 사용된 다양한 기능을 검색하십시오.
Re: 매주 업데이트되는 Excel 테이블에서 열 2-무한대에서 스택으로 JMP 스크립트이를 처리하는 한 가지 방법이 있습니다.BTW, 귀하의 예제 데이터 테이블을 열 수 없으므로 내 테이블 중 하나를 추가했습니다.
names default to here(1);
dt=data table("Example");
colNames = dt << get column names();
remove from(colNames, 1, 2 );
dt << Stack(
columns( colNames
),
Source Label Column( "Failure Group Name" ),
Stacked Data Column( "% Share, Week of" )
);