Col Median(실제: 대체) - 무엇이 잘못되었나요?이 파일의 문제점을 이해할 수 없습니다.
height_rel 그리고 height_rel 2 정확히 같은 공식을 가지고 있습니다.
그러나 안으로 height_rel 2 값이 없습니다.
파일을 저장하기 전에 수식 편집기에서 인수가 너무 적다고 불평했습니다. 열 중앙값 기능.
수식 편집기를 두 번 클릭한 다음 확인, 확인, 확인을 클릭하여 모든 창을 닫아 수식 편집기에 모든 것이 정상임을 확신시킬 수 있습니다.
파일을 저장한 후에는 불가능합니다. 공식을 되살리는 방법을 찾지 못했습니다.
열을 복사하여 붙여넣으면 복사 괜찮습니다.
데이터 혼합 및 정리Re: Col Median - 무엇이 잘못되었나요?관련 커뮤니티 토론:
평가하지 않는 동적으로 생성된 수식
Re: Col Median - 무엇이 잘못되었나요?추가 미스테리를 추가하기 위해 대체 함수 중 하나만 "()"을 포함해야 하므로 아래의 두 공식이 모두 작동합니다.
편집하다 : 그리고 더 파헤쳐 보면 JMP는 대체에서 "()" 없이 전달된 표현식에서 1개의 함수만 허용하는 것으로 보입니다. 3개의 수식이 맨 아래에 있으며 기존 표현식 주위에 또 다른 함수를 감싸고 있으며 괄호로 대체된 두 함수와 함께 올바르게 작동합니다. 저는 JMP가 표현식을 합법화하기 위해 표현식에 대해 추론하는 내부 패스가 있다고 생각하며 한 번만 조정한 다음 중단할 것입니다.
myFormula3 = Expr(__myHead__( :height, __aggregation__( :height ) ));
Substitute Into( myFormula3,
Expr( __myHead__ ), Expr( Divide() ),
Expr( __aggregation__ ),Expr( Col Median )
);
myFormula4 = Expr(__myHead__( :height, __aggregation__( :height ) ));
Substitute Into( myFormula4,
Expr( __myHead__ ), Expr( Divide ),
Expr( __aggregation__ ),Expr( Col Median() )
);
myFormula5 = Expr(__top__(__myHead__( :height, __aggregation__( :height ) )));
Substitute Into( myFormula5,
Expr(__top__), Expr(Log),
Expr( __myHead__ ), Expr( Divide),
Expr( __aggregation__ ),Expr( Col Median )
);
myFormula6 = Expr(__top__(__myHead__( :height, __aggregation__( :height ) )));
Substitute Into( myFormula6,
Expr(__top__), Expr(Log()),
Expr( __myHead__ ), Expr( Divide()),
Expr( __aggregation__ ),Expr( Col Median )
);
myFormula7 = Expr(__top__(__myHead__( :height, __aggregation__( :height ) )));
Substitute Into( myFormula7,
Expr(__top__), Expr(Log()),
Expr( __myHead__ ), Expr( Divide),
Expr( __aggregation__ ),Expr( Col Median() )
);
Re: Col Median - 무엇이 잘못되었나요?저는 이 문제를 다루는(또는 이 문제에 대해 논의하는) 웨비나를 알지 못하지만 JMP가 해당 표현식을 다시 구문 분석하도록 하는 영리한 해결 방법입니다. 나는 정말 감명 받았다 @jthi 대체에 ()를 포함하는 의 가장 최근 솔루션은 작동할 것이라고 추측하지 못했지만 JMP가 사용자가 함수를 전달하고 있음을 인식하고 나머지를 처리하는 데 도움이 되는 것 같습니다. 신비롭고 혼란스러운 문제에 대한 놀랍고 흥미로운 해결책!
Re: Col Median - 무엇이 잘못되었나요?와, 중요한 발견!
솔직히 말해서 괄호를 사용해야 한다는 사실을 몰랐습니다. 제대로 작동할 것이라고 장담조차 하지 않았을 것입니다.
감사합니다. 이 게시물에 대한 북마크를 내 팁과 요령 목록 
Re: Col Median - 무엇이 잘못되었나요?나는 문제가 Substitute에 있는 것이 아니라 다른 것에 있다고 생각합니다. 교체가 약간 이상하기 때문에 JMP는 이 경우 Col Median이 작동해야 한다는 것을 이해하지 못할 수 있습니다(대괄호가 없음). 이를 수행하는 "올바른" 방법은 다음과 같습니다(참고 () ~ 후에 나누다 그리고 콜 중앙값 ).
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
myFormula3 = Expr(__myHead__(:height, __aggregation__(:height)));
Substitute Into(myFormula3, Expr(__myHead__), Expr(Divide()), Expr(__aggregation__), Expr(Col Median()));
show(Name Expr(myFormula3));
new_col1 = Eval(
Substitute(
Expr(New Column("new3", Formula(__f__))),
Expr(__f__), Name Expr(myFormula3)
)
);
Re: Col Median - 무엇이 잘못되었나요?중첩된 If 문이 필요하고 작동하려면 동일한 코드를 여러 번 반복해야 할까 두려웠습니다.
매우 멋지고 "더러운" 해결 방법 - 감사합니다 
... 나는 그것이 필요하지 않았으면 좋겠다:
대체 버그 수정
수정: 필요하지 않음
@줄리안 : 위의 코드가 구문 분석(문자))?
Re: Col Median - 무엇이 잘못되었나요?이전에 직장에서 이러한 유형의 문제를 "해결"했지만 어떻게 그리고 왜 발생했는지 더 이상 기억할 수 없습니다. 또한 내 팁과 요령 목록에 기록하지 않았으므로 추론과 솔루션을 쉽게 찾을 수 없습니다. 이렇게 빌드했을 때 두 번째 표현식이 다른 표현식 안에 있으면 막히는 것 같습니다.
한 가지 해결 방법:
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
myFormula3 = Expr(__myHead__(:height, __aggregation__(:height)));
Substitute Into(myFormula3, Expr(__myHead__), Expr(Divide), Expr(__aggregation__), Expr(Col Median));
myFormula4 = Expr(__myHead__(:height, __aggregation__(:height)));
Substitute Into(myFormula4, Expr(__myHead__), Expr(Divide));
Substitute Into(myFormula4, Expr(__aggregation__), Expr(Col Median));
Show(Name Expr(myFormula3));
Show(Name Expr(myFormula4));
new_col = Eval(
Substitute(
Expr(New Column("new3", Formula(__f__))),
Expr(__f__), Parse(Char(Name Expr(myFormula3)))
)
);
Re: Col Median - 무엇이 잘못되었나요?무엇이 잘못되었나요?
myFormula3 = Expr(__myHead__( :height, __aggregation__( :height ) ));
Substitute Into( myFormula3,
Expr( __myHead__ ), Expr( Divide ),
Expr( __aggregation__ ),Expr( Col Median )
);
myFormula4 = Expr(__myHead__( :height, __aggregation__( :height ) ));
Substitute Into( myFormula4,Expr( __myHead__ ), Expr( Divide ));
Substitute Into( myFormula4,Expr( __aggregation__ ),Expr( Col Median ));
?
Re: Col Median - 무엇이 잘못되었나요?감사합니다 - 제 문제를 해결하는 3가지 방법 
"OK"를 통해서만 작동하지 않았습니다.
더 깊이 파고들다 - 왜 그런 일이 일어났는가 ...
이유가 있나요 myFormula3 (대체 머리 그리고 집합 ) 그리고 myFormula4 (이후 대체 머리 그리고 집합 ) 작동하지 않습니까? myFormula1 그리고 myFormula2 (둘 중 하나만 대체) 합니다.
(JMP도 마찬가지 16.2 및 JMP 17)
이름 Expr(myFormulax) 아주 똑같이 보입니다.
이름 Expr(myFormula1) = Divide(:높이, Col Median(:높이));
이름 Expr(myFormula2) = :height / Col Median(:height);
이름 Expr(myFormula3) = Divide(:높이, Col Median(:높이));
이름 Expr(myFormula4) = Divide(:높이, Col Median(:높이));
안타깝게도 파일을 다시 열기 전에 저장하기 전에는 위의 3가지 솔루션 중 어느 것도 작동하지 않습니다.
라면 좋을텐데 현재 데이터 테이블() << 수식 다시 실행; 문제를 해결할 수 있습니다.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
myFormula1 = Expr(__myHead__( :height,Col Median( :height ) ));
Substitute Into( myFormula1,
Expr( __myHead__ ), Expr( Divide ),
);
myFormula2 = Expr(Divide( :height, __aggregation__( :height ) ));
Substitute Into( myFormula2,
Expr( __aggregation__ ),Expr( Col Median )
);
myFormula3 = Expr(__myHead__( :height, __aggregation__( :height ) ));
Substitute Into( myFormula3,
Expr( __myHead__ ), Expr( Divide ),
Expr( __aggregation__ ),Expr( Col Median )
);
myFormula4 = Expr(__myHead__( :height, __aggregation__( :height ) ));
Substitute Into( myFormula4,Expr( __myHead__ ), Expr( Divide ));
Substitute Into( myFormula4,Expr( __aggregation__ ),Expr( Col Median ));
Show( Name Expr( myFormula1 ) );
Show( Name Expr( myFormula2 ) );
Show( Name Expr( myFormula3 ) );
Show( Name Expr( myFormula4 ) );
Eval( Substitute( Expr( New Column( "new1", Formula( __f__ ) ) ), Expr( __f__ ), Name Expr( myFormula1 ) ) );
Eval( Substitute( Expr( New Column( "new2", Formula( __f__ ) ) ), Expr( __f__ ), Name Expr( myFormula2 ) ) );
Eval( Substitute( Expr( New Column( "new3", Formula( __f__ ) ) ), Expr( __f__ ), Name Expr( myFormula3 ) ) );
Eval( Substitute( Expr( New Column( "new4", Formula( __f__ ) ) ), Expr( __f__ ), Name Expr( myFormula4 ) ) );
Re: Col Median - 무엇이 잘못되었나요?수식 편집기로 돌아가서 적용을 누르십시오. 또는 Suppress Eval -> Apply -> Suppress Eval -> Apply를 다시 선택 취소합니다. Current Data Table() << Rerun formulas를 사용해 볼 수도 있습니다.