수식을 결과로 변환하기 위한 JSL안녕하세요,
다음 jsl 코드가 있습니다.
dt << New Column( "I (%)", (:Mean * 100) );
열(Mean)을 취하고 100을 곱하고 수식을 사용하여 I(%)라는 새 열을 만듭니다.
수식을 원하지 않고 새 열의 계산 결과만 원합니다. 어떻게 해야 하나요?
감사합니다.
스크립팅Re: 수식을 결과로 변환하기 위한 JSL감사합니다.Re: 수식을 결과로 변환하기 위한 JSL감사해요! 매우 명확한.Re: 수식을 결과로 변환하기 위한 JSL대단히 감사합니다. 매우 유용합니다.Re: 수식을 결과로 변환하기 위한 JSL이것은 주제에서 약간 벗어난 것일 수 있으며 이에 대해 더 논의하기 위해 다른 게시물을 만들 수 있습니다...
문서가 Set Each Value에 대한 것이지만(JMP 문서가 항상 정확한 것은 아닙니다...) 이런 경우를 처리하는 것이 가장 쉬운 방법이라고 생각합니다. 나중에 수식을 제거할 걱정 없이 각 값 설정으로 복잡한 "수식"을 쉽게 사용할 수 있습니다. Values()를 사용하면 계산이 조금 더 어려워질 수 있습니다. 제 예제를 참조하세요(저는 확실히 JSL 매트릭스에 능숙하지 않기 때문에 제 예제에서 수행한 작업을 더 쉽게 수행할 수 있는 방법이 있을 가능성이 높습니다).
수식의 예, 각 값 및 값 설정:
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
//With formulas
newCol = dt << New Column("Formula_simple", Numeric, Continuous, Formula(:height*:weight));
newCol << Delete Formula;
newCol = dt << New Column("Formula_ColMin", Numeric, Continuous, Formula(:height*ColMin(:weight, :sex)));
newCol << Delete Formula;
//With Set Each Value
newCol = dt << New Column("SetEach_simple", Numeric, Continuous, Set Each Value(:height*:weight));
newCol = dt << New Column("SetEach_ColMin", Numeric, Continuous, Set Each Value(:height * ColMin(:weight, :sex)));
//With Values
newCol = dt << New Column("Values_simple", Numeric, Continuous, Values((:height << get values) :*</img> (:weight<< get values)));
newCol = dt << New Column("Values_ColMin", Numeric, Continuous, Values(
Summarize(exg = By(:sex), exm = Min(:weight)); //get min values by group
m_val = J(N Rows(dt),1,1);//matrix for values
height_vec = :height << get values;
For(i = 1, i <= N Items(exg), i++, //loop to "fill" matrix for values
tempRows = Loc(:sex << get as matrix, exg[i]);
m_val[tempRows] = height_vec[tempRows] * exm[i];
);
m_val;
));각 값 설정은 잘 작동하는 것처럼 보이기 때문에 배후에서 무엇을 합니까? 이 동작을 포함하도록 설명서를 업데이트해야 합니까, 아니면 이를 수행하기 위해 만든 새 기능을 포함해야 합니까? Set Each Values 동작이 변경되면 사람들이 가지고 있는 많은 스크립트가 깨질 수 있습니다.
Re: 수식을 결과로 변환하기 위한 JSL이 동작은 << 각 값 설정 메시지의 의도된 목적입니다.
Re: 수식을 결과로 변환하기 위한 JSL냉각기! 각 값을 동일한 값으로 설정해야 한다고 가정했습니다.
Re: 수식을 결과로 변환하기 위한 JSLHee는 Set Each Value를 사용하는 간단한 예입니다.
names default to here(1);
dt=open("$SAMPLE_DATA\big class.jmp");
dt << new column("times100", numeric, continuous, set each value(:height*100));

Re: 수식을 결과로 변환하기 위한 JSL이 경우 해당 메시지는 도움이 되지 않습니다. 대상 열의 모든 행을 동일한 상수 값으로 설정하는 데 사용됩니다.

Re: 수식을 결과로 변환하기 위한 JSL시원한!
Re: 수식을 결과로 변환하기 위한 JSL공식이 전혀 필요하지 않습니다. 스크립트가 완료된 후 값을 동적으로 변경하지 않으려면 스크립팅할 때 열 수식을 사용하지 않는 것이 좋습니다. 따라서 귀하의 사례는 다음과 같이 해결할 수 있습니다.
dt << New Column( "I (%)", Numeric, Continuous, Values( (:Mean << Get Values) * 100) );
Re: 수식을 결과로 변환하기 위한 JSLFormula() 대신 <<각 값 설정()을 사용해 보십시오.
Re: 수식을 결과로 변환하기 위한 JSLwait(3)은 단지 당신이 그것을 볼 수 있도록 하기 위한 것입니다; <
수식 편집기를 사용하여 동일한 효과를 위해 수식을 지울 수도 있습니다.
Re: 수식을 결과로 변환하기 위한 JSLNamesDefaultToHere(1);
// Sample table
dt = Open("$SAMPLE_DATA/Big Class.jmp");
// Add a formula column
dt << NewColumn("BMI", Numeric, Continuous, Formula(:weight/(:height^2)));
// Make sure the formula is run
dt << runFormulas;
// Wait a little, then remove the formula
Wait(3);
Column(dt, "BMI") << deleteFormula;