취소
다음에 대한 결과 표시 
표시  만  | 다음에 대한 검색 
다음을 의미합니까? 
The Discovery Summit 2025 Call for Content is open! Submit an abstract today to present at our premier analytics conference.
Get the free JMP Student Edition for qualified students and instructors at degree granting institutions.
언어 선택 변환 막대 숨기기
게시된 스레드 원본 보기

JSL을 사용하여 동일한 열에서 양수 값과 음수 값을 분류하려면 어떻게 해야 합니까?

lwx228
Level VIII

문서 "부정맥"의 "체중" 열과 첨부 파일의 "기준" 파일에 따르면 "수준" 열이 얻어집니다.

그리고 "level" 컬럼과 "class" 컬럼에 따라 "V3 QRSTA" 컬럼의 데이터를 다음과 같은 규칙에 따라 분류한다.
행 기준은 "레벨", 열 기준은 "클래스"로, "V3 QRSTA" 컬럼의 양수 값과 음수 값을 각각 분류하여 요약한다.

undefined


위의 작업은 엑셀과 그 기능을 이용하면 쉽게 완료할 수 있지만, 데이터 용량이 클 경우 속도가 느려집니다.


데이터의 양이 많을 경우에는 JMP JSL 사용법이 더 빠르게 완료될 것입니다. 정말 감사합니다!
이 문제는 꽤 복잡합니다. 여러 장의 사진을 찍고 파일 2개를 올렸습니다.

원래 English (US) 로 작성된 이 게시물은 귀하의 편의를 위해 번역되었습니다. 답장을 보내면 English (US) 로 다시 번역됩니다.

22 응답 22
txnelson
Super User

Re: JSL을 사용하여 동일한 열의 양수 값과 음수 값을 분류하려면 어떻게 해야 합니까?

JMP에는 분류 및/또는 구간화에 사용할 수 있는 다양한 방법과 기능이 있습니다.제가 설명한 If() 구조는 귀하가 지정한 가중치 분류에 대해 매우 빠르고 쉽게 구현할 수 있습니다.100개 이상의 레벨이 있는 분류에 대해 더 구체적으로 설명할 수 있다면 사용 가능한 방법이 있을 것이라고 확신합니다.  

원래 English (US) 로 작성된 이 게시물은 귀하의 편의를 위해 번역되었습니다. 답장을 보내면 English (US) 로 다시 번역됩니다.

lwx228
Level VIII

Re: JSL을 사용하여 동일한 열의 양수 값과 음수 값을 분류하려면 어떻게 해야 합니까?

짐에게 감사드립니다!
이 예제가 JSL을 사용하여 어떻게 수행되는지 확인하세요.
<=

원래 English (US) 로 작성된 이 게시물은 귀하의 편의를 위해 번역되었습니다. 답장을 보내면 English (US) 로 다시 번역됩니다.

lwx228
Level VIII

Re: JSL을 사용하여 동일한 열의 양수 값과 음수 값을 분류하려면 어떻게 해야 합니까?

  • 이 실제 예를 사용해 보세요. 감사합니다!undefined

원래 English (US) 로 작성된 이 게시물은 귀하의 편의를 위해 번역되었습니다. 답장을 보내면 English (US) 로 다시 번역됩니다.

lwx228
Level VIII

Re: JSL을 사용하여 동일한 열의 양수 값과 음수 값을 분류하려면 어떻게 해야 합니까?

표준 간격은 불규칙합니다.

원래 English (US) 로 작성된 이 게시물은 귀하의 편의를 위해 번역되었습니다. 답장을 보내면 English (US) 로 다시 번역됩니다.

txnelson
Super User

Re: JSL을 사용하여 동일한 열의 양수 값과 음수 값을 분류하려면 어떻게 해야 합니까?

다음은 각 원시 데이터 행에 대한 등급을 설정하는 처리를 수행하는 한 가지 방법의 예입니다.저는 50,000개의 예제 데이터 테이블을 갖도록 설정했습니다. 4년 된 Window PC에서는 예제 데이터를 생성한 다음 각 행에 대한 등급을 설정하는 데 약 2초가 걸립니다.

Names Default To Here( 1 );

// Create a sample standards table
dtStandard = New Table( "Standards",
 Add Rows( 200 ),
 New Column( "standards", formula( Random Integer( 93500, 1000000 ) ) )
);
dtStandard << run formulas;
dtStandard:standards << delete property( "formula" );
dtStandard << sort( by( :standards ), order( ascending ), replace table( 1 ) );
dtStandard << rerun formulas;
dtStandard << New Column( "grades", formula( Row() ) );
dtStandard:grades << delete property( "formula" );

// Create an example table
dt = New Table( "Example",
 Add Rows( 50000 ),
 New Column( "Raw Data", formula( Random Integer( 93500, 1000000 ) ) )
);
dt << run formulas;
dt:Raw Data << delete property( "formula" );

// Make sure the standards table has the same range as the example table
If( dtStandard:standards[1] > Col Min( dt:raw data ),
 dtStandard:standards[1] = Col Min( dt:raw data )
);
If( dtStandard:standards[200] < Col Max( dt:raw data ),
 dtStandard:standards[200] = Col Max( dt:raw data )
);

// Set the standard
// The code below is the actual code that performs the setting of the grade

// Create a column to hold the original row positions in the data table
dt << New Column( "OrigRow", formula( Row() ) );
dt:OrigRow << delete property( "formula" );

// Add the new grades column to the Example data
dt << New Column( "grade" );

// Sort the data in order of the raw data
dt << sort( by( :Raw Data ), order( ascending ), replace table( 1 ) );

For( i = 1, i <= N Rows( dt ), i++,
 If( i == 1,
  lkupRow = Max( dtStandard << get rows where( dtStandard:standards <= dt:Raw Data[i] ) )
 );
 While( dtStandard:standards[lkupRow] < dt:Raw Data[i], lkupRow = lkupRow + 1 );
 dt:grade[i] = dtStandard:grades[lkupRow];
);

// Sort the data back to the original order
dt << sort( by( :OrigRow ), order( ascending ), replace table( 1 ) );

// Delete the origrow column
dt << delete columns( "OrigRow" );

원래 English (US) 로 작성된 이 게시물은 귀하의 편의를 위해 번역되었습니다. 답장을 보내면 English (US) 로 다시 번역됩니다.

lwx228
Level VIII

Re: JSL을 사용하여 동일한 열의 양수 값과 음수 값을 분류하려면 어떻게 해야 합니까?

저는 Jim의 코드를 연구하면서 이러한 빠른 계산이 정렬을 통해서 이루어졌다는 것을 깨달았습니다.
짐에게 감사드립니다!

데이터가 천만 행에 도달하면 기다리는 데 시간이 걸립니다.

원래 English (US) 로 작성된 이 게시물은 귀하의 편의를 위해 번역되었습니다. 답장을 보내면 English (US) 로 다시 번역됩니다.

txnelson
Super User

Re: JSL을 사용하여 동일한 열의 양수 값과 음수 값을 분류하려면 어떻게 해야 합니까?

100만 개의 행으로 예제를 실행했는데 17초가 걸렸습니다.

원래 English (US) 로 작성된 이 게시물은 귀하의 편의를 위해 번역되었습니다. 답장을 보내면 English (US) 로 다시 번역됩니다.

lwx228
Level VIII

Re: JSL을 사용하여 동일한 열의 양수 값과 음수 값을 분류하려면 어떻게 해야 합니까?

짐에게 감사드립니다!

원래 English (US) 로 작성된 이 게시물은 귀하의 편의를 위해 번역되었습니다. 답장을 보내면 English (US) 로 다시 번역됩니다.

lwx228
Level VIII

Re: JSL을 사용하여 동일한 열의 양수 값과 음수 값을 분류하려면 어떻게 해야 합니까?

이제 가중치 "레벨" 열과 "클래스" 열을 추가하여 "V3 QRSTA" 열의 양수 값과 음수 값을 각각 요약하고 싶습니다.

JSL로 이 작업을 수행하는 방법은 무엇입니까?

 

undefined

 

 

계산 관련 자료는 첨부파일에 올려두었습니다. 감사합니다!

원래 English (US) 로 작성된 이 게시물은 귀하의 편의를 위해 번역되었습니다. 답장을 보내면 English (US) 로 다시 번역됩니다.

lwx228
Level VIII

Re: JSL을 사용하여 동일한 열의 양수 값과 음수 값을 분류하려면 어떻게 해야 합니까?

  • 이는 마이너스 소계입니다.

  • undefined

감사해요!

원래 English (US) 로 작성된 이 게시물은 귀하의 편의를 위해 번역되었습니다. 답장을 보내면 English (US) 로 다시 번역됩니다.