jsl 스크립트 도움이 필요합니다. 모델 검증 테스트를 위해 임의의 행을 제거하고 나머지 행을 모델 생성에 사용하려고 합니다.안녕하세요 - 저는 무작위 80%의 데이터를 사용하여 회귀 방정식을 맞추고, 그 결과 모델링된 방정식을 사용하여 나머지 20%의 데이터를 모델에 실행하고 그 20%의 관찰 결과와 모델링된 결과를 저장하려고 합니다. 즉, 20%의 행은 검증에 사용됩니다.
제 데이터 세트에는 227개 행이 있습니다. 저는 그 중 80%를 사용하여 훈련(즉, 회귀 방정식 개발)하고, 그 후 해당 회귀 방정식을 나머지 20% 행에서 실행하여 그 20% 행에 대한 관찰 대 모델링을 계산하고 싶습니다.
제 스크립트가 제대로 작동하지 않습니다. 20%의 행을 올바르게 제외하지만 100%의 행을 모두 실행하고 저장합니다. 아래 코드를 표시하지만 관찰된 결과와 모델링된 결과에 대한 다양한 메트릭을 계산하는 부분을 제거했습니다.
어떤 도움이라도 정말 감사할 겁니다! (저는 jmp pro 17.0을 사용하고 있어요)
dt = Open("C:\Users\trcampbell\Desktop\MASTER ECOLI\2025\2024.xlsx");
Random_rows = dt << Select Randomly(0.2) << Hide and Exclude();
New Column("Excluded", Numeric, ordinal);
:Excluded << Set Formula(If(Excluded(), 1, 0));
dt << Sort(By(:Excluded), Replace Table, Order(Descending), Copy formula(0));
/////////////......LOG ECOLI VS LOG TURB....LINEAR FIT....../////////////////////
obj = Fit Model(
Y(:LOGECOLI),
Effects(:LOGTURB),
Personality("Standard Least Squares"),
Emphasis("Effect Leverage"),
Run(:LOGECOLI)
);
obj << Prediction Formula;
ref = obj <<
dt << save(
"C:\Users\trcampbell\Desktop\MASTER ECOLI\2025\validation results\test xxxxx1 with 126 and 886.xls"
);자동화 및 스크립팅기본 데이터 분석 및 모델링Re: jsl 스크립트 도움이 필요합니다. 모델 검증 테스트를 위해 임의의 행을 제거하고 나머지 행을 모델 생성에 사용하려고 합니다.JMP Pro가 있으므로 검증 열을 사용하는 것을 고려할 것입니다.

Re: jsl 스크립트 도움이 필요합니다. 모델 검증 테스트를 위해 임의의 행을 제거하고 나머지 행을 모델 생성에 사용하려고 합니다.JMP Pro를 사용하고 있습니다. 학습, 검증 및 테스트 홀드아웃 세트를 사용하여 모델 선택을 위한 기본 제공 지원에 대해 알고 계십니까?
Re: jsl 스크립트 도움이 필요합니다. 모델 검증 테스트를 위해 임의의 행을 제거하고 나머지 행을 모델 생성에 사용하려고 합니다.저는 Semiconductor Capability 샘플 데이터 테이블을 사용하여 JMP 17에서 JSL을 실행했습니다. 스크립트는 총 1455개 행 중 291개 행을 선택했습니다. 선택된 291개 행은 숨겨지고 제외되었습니다.
그런 다음 적합 모델을 실행했는데, 적합 모델의 결과는 제외되지 않은 행에만 기반했습니다.

저장된 예측 공식은 모든 행에 대한 예측 값을 계산합니다. 선택/제외된 행과 선택/제외되지 않은 행을 기준으로 구별하지 않습니다.
이것이 귀하가 겪고 있는 문제의 원인일 수 있습니다.
Re: jsl 스크립트 도움이 필요합니다. 모델 검증 테스트를 위해 임의의 행을 제거하고 나머지 행을 모델 생성에 사용하려고 합니다.고맙습니다, 짐. 스크립트를 수정하여 행의 20%(검증 세트)만 저장하는 방법이 있나요?
Re: jsl 스크립트 도움이 필요합니다. 모델 검증 테스트를 위해 임의의 행을 제거하고 나머지 행을 모델 생성에 사용하려고 합니다.이를 수행하는 방법은 여러 가지가 있습니다.
- Select Randomly를 사용하는 대신 Subset을 사용하여 80% 랜덤 샘플을 만들 수 있습니다. 그런 다음 Fit Model을 실행하고 하위 집합 테이블을 저장합니다.
- 또는 스크립트를 실행한 후 제외된 열을 기준으로 테이블의 하위 집합을 만든 다음 생성된 하위 집합 테이블을 저장합니다.
Re: jsl 스크립트 도움이 필요합니다. 모델 검증 테스트를 위해 임의의 행을 제거하고 나머지 행을 모델 생성에 사용하려고 합니다.감사합니다. 저는 파일을 저장하기 직전 줄에 아래 코드를 사용했습니다. 이것이 맞다고 생각합니다(즉, 여전히 80%의 훈련 행에서 얻은 공식을 활용합니다).
dt<< 행 삭제(dt << 행 가져오기 Where( :Excluded == 0 ));
dt<< Save("C:\\Users\\trcampbell\\Desktop\\MASTER ECOLI\\2025\\검증 결과\\제외된 행.xlsx");
Re: jsl 스크립트 도움이 필요합니다. 모델 검증 테스트를 위해 임의의 행을 제거하고 나머지 행을 모델 생성에 사용하려고 합니다.고맙습니다, 지티!
Re: jsl 스크립트 도움이 필요합니다. 모델 검증 테스트를 위해 임의의 행을 제거하고 나머지 행을 모델 생성에 사용하려고 합니다.네, 정말 고맙습니다.