JSL에서 열 참조튜토리얼과 인터넷 검색에서 JSL에 대한 기본 정보가 얼마나 많이 빠져 있는지 계속해서 놀라고 있습니다. 엄청난 양의 불필요한 애드온 정보를 살펴보지 않고 이 언어의 기본을 배우고 결국 필요한 것을 찾는 데 실패하는 방법을 잘 모르겠습니다. 이것이 토론 포럼을 리소스로 사용할 수 있는 이유인 것 같습니다.
JSL의 데이터 테이블이 주어진 열을 단순히 참조하려고합니다.
dt = Open("filepath.jsl");
col = dt:"Column Title/Name";내가 Write() col 때 아무 것도 표시되지 않으며 참조가 참조하지 않음을 의미합니다. 열이 데이터로 명확하게 채워져 있고 비어 있지 않은지 확인했습니다. 어리석은 오류를 범했지만 내가 처리했습니다. 그러고 보니 뭐가 문제인지 모르겠습니다. 나는 이것이 JSL에서 매우 기본적인 것이라고 생각했지만, 이러한 "JSL의 매우 기본적인 것"이 실패하고 내 코드의 논리에 대해 작업할 수 있을 때 문제 해결에 귀중한 몇 분에서 몇 시간이 소요된다는 것을 지속적으로 발견하고 있습니다. 저는 이 언어의 사용에 대해 관리자에게 불만을 제기하고 Python과 같이 프로그래밍을 위해 더 논리적이고 잘 설계된 것으로 잠재적으로 전환할 것을 제안합니다.
<한숨>. 도움을 주셔서 감사합니다.
스크립팅Re: JSL에서 열 참조[NB: 나는 이것의 대부분을 전에 썼습니다. @jthi 같은 말을 많이 했다.]
첫째, 당신이 (적어도 처음 몇 장)을 읽지 않았다면 JMP 스크립팅 가이드 ( PDF , 원하는 경우) 정말 해야 합니다.
JMP는 프로그래밍 언어가 아니라 스크립팅 언어입니다. JMP용 사용자 인터페이스와 매우 밀접하게 연결되어 있으며 JMP 작업을 자동화할 수 있습니다. 파이썬이나 사용자 인터페이스를 제어하지 않는 다른 언어를 생각하는 것과 같은 방식으로 생각하려고 하면 좌절감을 느낄 것입니다.
JSL의 데이터 테이블이 주어진 열을 단순히 참조하려고합니다.
귀하의 질문이 그 예입니다. "열 참조"의 개념은 "열"이 다른 컨텍스트(예: 플랫폼 호출, 열 속성 조작, 열 수식)에서 다른 것을 의미할 수 있기 때문에 복잡합니다.
그래서, 당신은 당신의 예에 어떤 "col"을 포함시켰습니까? 열에 포함된 데이터는? 해당 열의 특정 행 값?
아니면 다르게 물었다? 포함하고 싶은 대로 설정한 후 "col"을 어디에 사용하고 싶습니까? 플랫폼 호출에서(예: Distribution(Y(col))? 아니면 다른 곳에서?
Re: JSL에서 열 참조dt:"colname"을 올바르게 사용한 것을 기억한다면(As Column()을 사용하는 것과 동일) 참조 dt가 있는 데이터 테이블에서 "colname"이라는 열의 현재 Row() 값에 직접 액세스할 수 있습니다. 열에 대한 참조를 얻으려면 Column(dt, "colname")을 다음과 같이 사용할 수 있습니다. @티에리_S 말했다.
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(5),
Compress File When Saved(1),
New Column("Column Title/Name",
Character,
"Nominal",
Set Values({"a1", "b2", "c3", "d4", ""})
)
);
For each row(dt,
col = dt:"Column Title/Name";
Show(col);
);
Row() = 1;
col = AsColumn(dt, "Column Title/Name");
Show(col);
col = Column(dt, "Column Title/Name");
Show(col);JSL 문서가 최고라고 말하는 것은 아니지만 상당한 양의 자료(그리고 훌륭한 커뮤니티와 이메일 지원)가 있습니다. 우선 다음과 같은 좋은 소스가 있습니다.
JMP15 - 스크립팅 가이드
JMP 도움말
JMP에서 직접 스크립팅 인덱스
JMP 도움말이나 스크립팅 색인에 누락되거나 불분명한 것이 있으면 JMP가 기꺼이 개선할 것이라고 확신합니다.
@Jeff_Perkinson
Re: JSL에서 열 참조올바른 구문은 다음과 같습니다. col = Column(dt, "이름")