안녕,
데이터가 이렇게 퍼져있는 엑셀 데이터 시트를 변환하는 데 몇 가지 어려움이 있습니다. 스프레드 시트도 첨부했습니다.
이것에 대한 어떤 생각? 비슷한 날짜를 Excel 시트에서 JMP 데이터 세트로 빠르게 변환하려면 어떻게해야합니까?
감사

새로운 JMP 버전 16을 사용하여 대화식 단계를 통해 데이터를 수정 한 다음 로그에서 JSL을 잘라내 스크립트에 붙여 넣었습니다.그런 다음 내 기본 설정 중 일부를 코드에 적용했지만 그럴 필요는 없었을 것입니다.
참고 : 또한 JMP에서 열기 전에 Excel 데이터 시트 인 Data wrangler에서 그래픽과 최종 결과 열을 삭제했습니다.

names default to here(1);
dt = Open(
"<PATH to="">/Data wrangling .xlsx",
Worksheets( "Sheet1" ),
Use for all sheets( 1 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" )
)
);
// Delete selected rows
dt << Select Where(
:Column 1 == "" & Is Missing( :Column 2 ) & Is Missing( :Column 3 ) & :Column 4
== "" & Is Missing( :Column 5 ) & Is Missing( :Column 6 ) &
Is Missing( :Column 7 )
) << Delete Rows;
// New column: Column 8
dt << New Column( "Group",
character,
formula(If( Is Missing( :Column 1 ) & Is Missing( :Column 2 ) & Is Missing( :Column 3 ),
:Column 4
))
);
// Delete column formula: Group
dt:Group << Delete Formula;
For(i=1,i<=nrows(dt),i++,
if(:group[i]=="",:group[i]=:group[i-1])
);
// Delete selected rows
dt << Select Where(
:Column 1 == "" & Is Missing( :Column 2 ) & Is Missing( :Column 3 ) &
Is Missing( :Column 5 ) & Is Missing( :Column 6 ) & Is Missing( :Column 7 )
) << Delete Rows;
// Change column info: Column 4
dt:Column 4 << Data Type( Numeric ) <<
Set Modeling Type( "Continuous" ) << Set Field Width( 12 );
// Transpose data table
// → Data Table( "Transpose of Sheet1" )
dtTrans = dt << Transpose(
columns( :Column 2, :Column 3, :Column 4, :Column 5, :Column 6, :Column 7 ),
By( :Column 1, :Group ),
Output Table( "Transpose of Sheet1" )
);
// Change column name: Column 1 → T(Type)
dtTrans:Column 1 << Set Name( "T(Type)" );
// Delete column: Label
dtTrans << Delete Columns( :Label );
// Change column name: Row 1 → Response
dtTrans:Row 1 << Set Name( "Response" );
// New column: Column 4
dtTrans << New Column( "SI. No.",
Numeric,
"Continuous",
Formula( Row() ),
Format( "Best", 12 )
);
// Delete column formula: SI. No.
Data Table( "Transpose of Sheet1" ):SI. No. << Delete Formula;
// Move selected columns
Data Table( "Transpose of Sheet1" ) <<
Move Selected Columns( {:"T(Type)"n, :Group, :Response}, after( :SI. No. ) );</PATH>스크립팅이나 자동화 된 프로세스가 요청되지 않았기 때문에 수동으로 수행 할 수있는 방법은 다음과 같습니다. JMP16 강화 로그가이를 쉽게 자동화 할 수 있습니다. 가장 어려운 부분은 그룹 이름을 행에서 열로 가져 오는 것입니다. ) :
1. 헤더없이 .xslx 파일을 데이터 테이블로 엽니 다.

2. Group이라는 새 열을 만들고 그에 따라 그룹 이름을 복사하여 붙여 넣습니다.

3. 누락 된 값이있는 열 중 하나를 선택합니다. 마우스 오른쪽 버튼 클릭-> 일치하는 셀 선택-> 행 삭제

(3.5 : 열 4를 연속 숫자로 고정)
4. 테이블 메뉴에서 스택을 선택합니다.

5. Recode로 T (유형) 열의 값을 변경하고 추가 열을 제거 / 숨 깁니다.
6. 필요한 경우 값 순서 열 속성을 추가하고 열별로 정렬합니다.
