스크립트에 변수로 저장된 수식을 사용하여 새 열을 만듭니다.스크립트를 사용하여 제가 가지고 있는 일부 데이터에서 예측된 수식을 추출하고 있습니다. 그런 다음 대입을 사용하여 해당 수식을 수정하고, 이제 수정된 수식을 사용하여 새 열을 만들고 싶습니다. 이 작업은 간단할 것 같지만, 스크립트를 실행하려고 하면 변수로 저장된 수식이 인식되지 않습니다. 도움을 주시면 정말 감사하겠습니다. 더 자세한 정보가 필요하시면 알려주세요.
//Script that just shows saving the formula as a variable fm and modifying the variable using substitute to fm2
fm = report(obj1)[OutlineBox("Polynomial ?")][TextEditBox(1)] << get text;
//get the string to the right of the equal sign and convert the string to an expression using Parse()
fm = Parse(Trim(word(2, fm, "=")));
fm2 = Substitute(NameExpr(fm), EvalExpr(LnTime2), EvalExpr(log(Time2)));
//Script to create a new column with the fm2 formula that does not work
dt << New Column( "Predicted", Numeric, Formula (fm2));
// 스크립트에서 fm2를 인쇄하면 로그에 반환되는 내용은 다음과 같습니다.
fm2를 인쇄합니다.
(-0.270568) + 0.0352458 * 로그(시간2) - 0.0331127 * (로그(시간2) - 7.22484) ^ 2 + 0.0046766 * (로그(시간2) - 7.22484) ^ 3 + 0.0075752 * (로그(시간2) - 7.22484) ^ 4 + 0.0012501 * (로그(시간2) - 7.22484) ^ 5 + 0.000026534 * (로그(시간2) - 7.22484) ^ 6
고급 통계 모델링소비자 및 시장 조사콘텐츠 구성데이터 블렌딩 및 정리데이터 탐색 및 시각화대량 맞춤화품질 및 공정 엔지니어링결과 공유 및 전달Re: 스크립트에서 변수로 저장된 수식으로 새 열을 만듭니다.감사합니다!
Re: 스크립트에서 변수로 저장된 수식으로 새 열을 만듭니다.수식을 문자열로 유지하고 추가하는 팁에 감사드립니다. ":"은 열인지 여부를 JMP에 알립니다. 나는 eval(parse())를 작동시킬 수 없었고, 여기에도 큰따옴표가 필요한 이유를 확신할 수 없었습니다.
Re: 스크립트에서 변수로 저장된 수식으로 새 열을 만듭니다.수식을 문자열로 유지하고 그 안에 대체하고 ":"를 추가하여 열을 처리하고 있음을 JMP에 알린 다음 사용합니다.
평가(구문 분석())
그것을 실행합니다.다음은 간단한 예입니다.
names default to here(1);
dt=current data table();
fm="height";
fm2 = substitute(fm, expr("height"), "log(:height)");
eval(parse("dt << new column (\!"predicted\!",numeric,formula(" || fm2 || "));"));Re: 스크립트에서 변수로 저장된 수식으로 새 열을 만듭니다.대신 다음을 시도하십시오.
Eval(
Substitute(
Expr( dt << New Column( "Predicted", Numeric, Formula ( fff ) ) ),
Expr( fff ), Name Expr( fm2 )
)
);