벤치마크 창을 데이터 테이블에 저장하는 방법은 무엇입니까?안녕 !
이 스크립트 덕분에 jmp에서 벤치마크 창을 생성하고 데이터 테이블에 저장하고 싶습니다(마치 "스크립트를 데이터 테이블에 저장"을 하는 것처럼). 문제는 스크립트의 끝부분이 작동하지 않는다는 겁니다!!
// Ouvrir la table de données
dt = Open(fichier1);
// Initialiser une liste pour stocker les noms des colonnes avec la note "INGOT CHARACTERISTICS"
cols_with_note = {};
// Parcourir chaque colonne de la table par index
For(i = 1, i <= N Cols(dt), i++,
col = Column(dt, i);
// Vérifier si la colonne a une note "INGOT CHARACTERISTICS"
If(col << Get Property("Notes") == "INGOT CHARACTERISTICS",
// Ajouter le nom de la colonne à la liste
Insert Into(cols_with_note, col << Get Name)
);
);
Print(
"Colonnes avec notes trouvées pour la famille " || "INGOT CHARACTERISTICS" || " : " ||
Char(cols_with_note) || "\n"
);
// Créer une nouvelle fenêtre pour regrouper tous les graphiques
report_window = New Window("BenchMarks_Ingot_Characteristics",
V List Box(
Fit Group(
For(i = 1, i <= N Items(cols_with_note), i++,
col_name = cols_with_note[i];
// Ajouter le graphique Oneway au Fit Group
Oneway(
Y(Column(dt, col_name)),
X(Column(dt, selection)),
Quantiles(1),
Means and Std Dev(1),
Box Plots(1),
Mean Error Bars(1),
Std Dev Lines(1),
X Axis Proportional(0),
Grand Mean(0),
SendToReport(
Dispatch({}, "Oneway Plot", FrameBox,
{DispatchSeg(
Box Plot Seg(1),
{Confidence Diamond(0), Shortest Half Bracket(0),
Line Color("Red")}
)}
)
)
);
)
)
)
);
// Enregistrer la fenêtre dans le fichier de données
report_window << Save Script to Data Table(
dt, // Spécifie la table de données
"BenchMarks_Ingot_Characteristics", // Nom de la fenêtre pour enregistrer
);
2024-08-12 jthi 편집, JSL 포맷 추가
자동화 및 스크립팅데이터 접근데이터 탐색 및 시각화Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?JSL 코드를 JMP 커뮤니티에 게시할 때는 JSL 포맷을 활용하세요. 다음을 사용하여 추가할 수 있습니다.
.
질문 하신 JMP 버전은 무엇인가요?
Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?다음은 여러분에게 효과가 있을 수 있는 두 가지 옵션입니다. 옵션 2는 일반적으로 사용하기가 더 쉽지만 테이블에서 생성되는 스크립트를 수정하기가 더 어렵습니다.
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Semiconductor Capability.jmp");
sel = "SITE";
cols = Left(dt << Get Column Names("Continuous", "String"), 10);
// Option1
ow_expr = EvalExpr(dt << Oneway(
Y(Eval(Expr(cols))),
X(Eval(Expr(sel))),
Quantiles(1),
Means and Std Dev(1),
Box Plots(1),
Mean Error Bars(1),
Std Dev Lines(1),
X Axis Proportional(0),
Grand Mean(0),
SendToReport(
Dispatch({}, "Oneway Plot", FrameBox,
{DispatchSeg(
Box Plot Seg(1),
{Confidence Diamond(0), Shortest Half Bracket(0),
Line Color("Red")}
)}
)
)
));
Eval(EvalExpr(
dt << New Script("Plots", Expr(Name Expr(ow_expr)));
));
dt << Run Script("Plots"); // if you want to leave it open
// Option2
ows = dt << Oneway(
Y(Eval(cols)),
X(Eval(sel)),
Quantiles(1),
Means and Std Dev(1),
Box Plots(1),
Mean Error Bars(1),
Std Dev Lines(1),
X Axis Proportional(0),
Grand Mean(0),
SendToReport(
Dispatch({}, "Oneway Plot", FrameBox,
{DispatchSeg(
Box Plot Seg(1),
{Confidence Diamond(0), Shortest Half Bracket(0),
Line Color("Red")}
)}
)
)
);
ows[1] << Save Script for All Objects To Data Table("Plot2");Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?모든 벤치마크를 하나의 Fit Group에 포함시키기 위해 루프를 만들었고 이 모든 Fit Group을 하나의 창에 저장하고 싶은데, 보내주신 스크립트가 제게는 작동하지 않았습니다.:(
Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?제가 제공한 스크립트에 무슨 문제가 있나요? 어떤 JMP 버전을 사용하는지 알려주지 않아서 모든 JMP 버전에서 작동하지 않을 수도 있습니다(저는 상위 JMP17과 JMP18에만 접근할 수 있습니다).
Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?내 fichier1에 벤치마크가 등록되지 않았습니다. 이유는 모르겠습니다.Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?저는 jmp 16을 사용합니다Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?게다가 당신이 나에게 보낸 스크립트에는 루프가 포함되어 있지 않습니다.Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?루프가 필요하지 않다면(JMP16에서는 그럴 수도 있음) 왜 루프를 사용할까요? 이전 스크립트에서는 이런 결과가 나왔거든요(JMP18에서는)

Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?자르모,
JMP 16에서 스크립트를 실행했는데 두 옵션 모두 예상대로 작동했으며, 스크립트가 원래 데이터 테이블에 저장되었습니다.
Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?cols_with_note as Y 목록의 각 값에 대한 벤치마크를 생성해야 할 때 루프가 필요하지 않은 이유를 알 수 없습니다.Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?일부 JMP 플랫폼에서는 여러 열을 입력으로 사용할 수 있습니다. 열 목록을 만든 후에는 플랫폼에서 직접 입력으로 사용할 수 있습니다. 따라서 열을 수집하기 위한 루프가 하나 필요하고(또는 다른 방법, 데이터가 없어서 알 수 없음) 두 번째 루프는 원하는 최종 결과에 따라 불필요할 수 있습니다.
제 예제에는 루프가 없습니다. 제 예제 스크립트가 예제 목록을 만들기 위해 열을 반복할 필요가 없기 때문입니다. 특히 열 컬렉션 부분을 이미 해결한 것 같으므로, 여러분이 무엇을 할 수 있는지 보여주기 위해 몇 개의 열을 선택할 수 있습니다.
Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?알겠습니다. 하지만 왜 버튼을 클릭해서 실행하면 안 되는지 모르겠습니다. 저장은 했지만 녹색 버튼에서 벤치마크를 실행할 수 없습니다.
Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?스크립트를 마우스 오른쪽 버튼으로 클릭하고 편집을 선택하세요

그러면 테이블에 있는 스크립트를 볼 수 있는데, 아마도 뭔가 잘못된 것이 있을 겁니다. 때로는 데이터 테이블에 올바르게 저장하기가 약간 어려울 수 있습니다.
Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?알았어요, 정말 고맙습니다. 정말 저를 구해 주셨어요!! 또 다른 질문이 있어요. 저는 여러 가지 공부를 위해 이걸 만들고 있는데, 가끔 cols 목록(또는 cols_with_note)이 비어 있을 수 있지만, 저에게 보내 주신 스크립트는 cols가 비어 있으면 작동하지 않아요(실제로는 정상이에요). 저는 워크플로 폼 점프에 추가하기 위해 이 스크립트를 만들고 있어요. "cols가 비어 있으면 스크립트를 중지하고 다음 스크립트로 넘어가세요"라고 말할 수 있는 방법이 있나요?
Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?또는 목록이 비어 있지 않으면 벤치마크를 생성하고 그렇지 않으면 아무것도 하지 않습니다.
Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?if 문과 N Items()를 사용하여 목록에 항목이 있는지 확인할 수 있습니다. 그런 다음 비어 있으면 중지하거나 다른 작업을 수행합니다.
mylist = {};
If(N Items(mylist) == 0,
stop();
);
show(1);Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?도움말 풀다운 메뉴에서 제공되는 스크립팅 가이드를 꼭 읽어보시기 바랍니다.
Re: 벤치마크 창을 데이터 테이블에 저장하는 방법?목록에 열 이름이 하나만 있거나 비어 있는 열이 있을 때 스크립트에서 : send는 스크립트 가능 객체를 기대합니다. 이를 수정하는 방법은 무엇입니까?