숫자 열의 값을 사용하여 동일한 열 번호에 대한 참조를 만들고 싶습니다.정수로 구성된 열을 생성했는데, 이 열을 같은 숫자의 열에 있는 값을 참조하는 데 사용하고 싶습니다. 9열에는 10열의 수식에서 참조해야 하는 열을 나타내는 숫자가 포함되어 있습니다. 아래는 작동하지 않는 몇 가지 사항입니다.



자동화 및 스크립팅Re: 숫자 열의 값을 사용하여 동일한 열 번호에 대한 참조를 만들고 싶습니다.빨간색 밑줄이 있는 코드 위에 마우스를 올리면 어떤 오류 메시지가 표시되나요?
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
New Column( "Column 9",
Numeric,
Set Values( [1, 2, 3, 4, 5] )
);
New Column( "Column 10",
Expression,
Formula( Try( Column( :Column 9 ) ) )
)
오류 없음:


열을 검색하지 않고 열에 저장된 값을 검색하려면 column() 대신 As column()을 사용하세요.
강력한 열 참조
... 또는 Column()에 행 인덱스를 추가합니다.
열(col)[row()] 또는 열(col)[]
New Column( "Column 10b",
Character,
Formula( Try( Char( Column( :Column 9 )[Row()] ) ) )
)

그 외에도,
- 계산된 값이 열의 모델링 유형과 일치하는지 확인하세요.
1~5열에는 숫자와 문자가 있습니다. 그래서 Char()를 추가했습니다.
- 열(.) 이 실패하고 열 수식이 종료됩니다. 따라서 9번 열에 누락된 인덱스가 있는지 확인하세요.
Re: 숫자 열의 값을 사용하여 동일한 열 번호에 대한 참조를 만들고 싶습니다.호기
고맙지만, 그건 이미 9열에 있는 값만 알려주는 것일 뿐이고, 9열에 열거된 다른 열의 값을 찾고 싶습니다. 이해가 되시나요?
Re: 숫자 열의 값을 사용하여 동일한 열 번호에 대한 참조를 만들고 싶습니다.두 가지 접근 방식을 결합하여 첫 번째 단계에서 열을 검색하고 두 번째 단계에서 값을 검색해 보겠습니다.
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
New Column( "column",
Expression,
Formula( Try( Column( Row() ), . ) ),
);
New Column( "value",
Character,
Formula( Try( Char( :column[Row()][Row()] ), "" ) ),
)
why :column[Row()][Row()]?
:column은 열 #9입니다.
:column[row()]는 이 열의 특정 행에 있는 항목입니다. 예: Column("sex")
그리고 :column[row()][row()]는 예를 들어 Column("sex") 의 특정 행에 있는 항목입니다.

Re: 숫자 열의 값을 사용하여 동일한 열 번호에 대한 참조를 만들고 싶습니다.호기
훌륭한 추가네요! 선행도 없고 그런 것도 없고.............
이제 9번째 열에 저장된 최대값을 기준으로 모든 열에 대해 반복적으로 연산을 수행해야 합니다. 이 경우에는 i 값을 일반적으로 더하는 것이 자연스럽게 적용되지 않습니다.
clear symbols();
lim = Col Max(Column(8));
For (i=1, i<=lim, i++,
New Column( "Column 10b",
Character,
Formula( Try( Char( Column( :Column 9 )[Row()] ) ) )
));
Re: 숫자 열의 값을 사용하여 동일한 열 번호에 대한 참조를 만들고 싶습니다.
@SpannerHead 님 이 쓰셨습니다:
이 경우에는 i 값을 일반적으로 더하는 것이 자연스럽게 적용되지 않습니다.
매우 흔한 문제:
새 열 메시지 외부에서 정의되고 새 열 메시지 내부에서 사용되는 변수:
-> JMP에서의 표현식 처리: 팁과 트랩도어
해결 방법: 변수를 찾아 저장된 값을 사용합니다.
For each ({i}, 1::5,
Eval(Eval Expr(New Column( "col_"||char(i),
Character,
Formula( Try( Char( Column( Expr(i) )[Row()] ) ) )
))));
더욱 강력함:
For each ({i}, 1::5,
Eval(Eval Expr(New Column( "col_"||char(i),
Character,
Formula( Try( Char( Expr(Name Expr(As Column( i )) )) ) )
))));
@jthi 의 게시물에서 처음 본 날부터 저는 Name Expr(As Column(col))에 감탄했고 가능한 모든 곳에 사용했습니다.
https://community.jmp.com/t5/Discussions/Using-numeric-objects-in-a-column-equation/mp/903966/highlight/true#M106273 에서 배운 내용을 바탕으로, 이 접근 방식이 많은 함정을 피하는 데 도움이 되어 매우 기쁩니다.
열 수식에서 열(col) 또는 열(col) 으로요? 너무 취약해요!