변수를 사용하여 새 열 만들기<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />모두 안녕
아래와 같이 2개의 변수로 표시되는 수식을 사용하여 새 열을 만들려고 합니다.
dt << New Column("myNewColumn", Numeric, Continuous, Formula(:Ceiling( XXColumn / Size) * Size));
어디:
XXColumn은 dt의 열 이름 중 하나이며, 열 대화 상자에서 선택됨
크기 = 열 대화 상자의 숫자 값
내 시도 결과 아래와 같이 수식 생성으로 값이 없는 수식이 포함된 새 열이 생성되었습니다.
Ceiling(Column(XXColumn ) / 크기) * 크기
실제로 할당하지 않고.
내가 어떻게 이것을 할 수 있는지 아십니까?
Re: 변수가 있는 새 열 만들기다시 한 번 감사드립니다, MS. 이에 유의하겠습니다.
Re: 변수가 있는 새 열 만들기코드를 읽음으로써 알 수 있는 한 f_Bin은 열을 참조하는 반면 n_Bin은 여기에서 사용하기에 가장 안전한 데이터 유형인 문자열입니다.
Re: 변수가 있는 새 열 만들기드디어 마법이 일어났습니다!!!
여기 내가 사용한 코드가 있습니다 ..
col = dts << New Column("Binning", Numeric, Continuous);
Eval( Parse( Eval Insert( "col << Set Formula(:Ceiling( ^n_Bin^ / ^BinSize^) * ^BinSize^)<< 평가 공식" )) );
안내해 주셔서 감사합니다. 내가 사용한 f_bin과 n_bin의 diff는 무엇입니까?
Re: 변수가 있는 새 열 만들기f_Bin 대신 n_Bin을 직접 사용해 보십시오.
평가 ( 구문 분석 ( 평가 삽입 ( "col << 수식 설정(Ceiling( ^n_Bin^ / ^BinSize^) * ^BinSize^)" )) ) ;
Re: 변수가 있는 새 열 만들기그것은 작동하지 않았다. 내가 하고 있는 일을 설명하고 내 코드를 붙여넣어 공유해야 할 수도 있습니다.
1단계: 열 대화 상자에서 입력 수집
2단계: 선택한 열 + 기본 열에 대한 최소, 평균, 최대값으로 요약 테이블 수행
3단계: 천장용 새 기둥 만들기
4단계: 그래프 빌더를 사용하여 플로팅 수행
암호:
dt0 = 현재 데이터 테이블();
FN = dt0 << 이름 얻기;
r = 열 대화상자(
Bin = ColList( "X, Binning By", Max Col( 1 ) ),
Overlay = ColList( "그룹별 / 오버레이 기준", Max Col( 1 ) ),
분할 = ColList( "Y, 응답", 최대 Col( 5 ) ),
비교 = ColList( "X축 상단", Max Col( 1 ) ),
HList( "Bin 크기: ", BinSize = EditNumber( .1 ) ),
);
빈 = r["빈"];
오버레이 = r["오버레이"];
분할 = r["분할"];
비교 = r["비교"];
BinSize = r["BinSize"];
dts = dt0 << 요약(
Group(:고정, column(dt0,Overlay), column(dt0,Compare) ),
평균( :수율 ),
최소(열(dt0,Bin)),
평균(열(dt0,Bin)),
최대( column(dt0,Bin) ),
최소( column(dt0,Split[1]) ),
평균( column(dt0,Split[1]) ),
최대( column(dt0,Split[1]) ),
최소( column(dt0,Split[2]) ),
평균( column(dt0,Split[2]) ),
최대( column(dt0,Split[2]) ),
최소( column(dt0,Split[3]) ),
평균( column(dt0,Split[3]) ),
최대( column(dt0,Split[3]) ),
최소( column(dt0,Split[4]) ),
평균(열(dt0,분할[4])),
최대( column(dt0,Split[4]) ),
최소( column(dt0,Split[5]) ),
평균(열(dt0,분할[5])),
최대( column(dt0,Split[5]) ),
통계 열 이름 형식( "열 통계" ),
);
dts << 이름 설정(FN || " 요약");
n_Bin = Bin[1]||" 평균";
f_Bin = 열(dts, n_Bin);
col = dts << New Column("Binning", Numeric, Continuous);
Eval( Parse( Eval Insert( "col << Set Formula(Ceiling( ^f_Bin^ / ^BinSize^) * ^BinSize^)" )) );
Re: 변수가 있는 새 열 만들기아니요. Eval Formula는 내가 아는 한 동등하다고 가정합니다.
새 열을 분리하고 수식을 별도의 표현식으로 설정해 보십시오.
dt = 열려 있는 ( "$SAMPLE_DATA/빅 클래스.jmp" ) ;
열 = 열 대화상자 (
열1 = 콜리스트 ( "엑스" , 최대 열 ( 1 ) , 데이터 형식 ( 숫자 ) ) ,
열2 = 콜리스트 ( "와이" , 최대 열 ( 1 ) , 데이터 형식 ( 숫자 ) )
) ;
XX열 = 열 [ "콜1" ][ 1 ] << 이름을 얻다 ;
크기 = 열 [ "콜2" ][ 1 ] << 이름을 얻다 ;
안부 = dt << 새 열 ( "myNewColumn" , 숫자 , 마디 없는 ) ;
평가 ( 구문 분석 ( 평가 삽입 ( "col << 수식 설정(Ceiling( ^XXColumn^ / ^Size^) * ^Size^)" ) ) ) ;
안부 << 평가 공식 ;
Re: 변수가 있는 새 열 만들기작동하지 않습니다. 결과는 여전히 동일합니다.
JSL에서 적용 버튼 == ? 당신은 알고 있습니까?
Re: 변수가 있는 새 열 만들기<<평가 공식을 시도하십시오.
평가 ( 구문 분석 ( 평가 삽입 ( "dt << 새 열(\!"myNewColumn\!", 숫자, 연속, 수식(Ceiling( ^XXColumn^ / ^Size^) * ^Size^), <<평가 수식)" ) ) ) ;
Re: 변수가 있는 새 열 만들기내 것은 JMP8.0.0 Windows입니다.
그것의 유무에 관계없이 여전히 동일합니다. T_T
Re: 변수가 있는 새 열 만들기아니, 예상하지 못했다. 나를 위해(Mac용 JMP 10) "적용"을 클릭하지 않고도 작동합니다. 원래 코드에서 남아 있는 "Ceiling..." 앞에 부주의한 콜론이 있습니다(이제 위의 코드를 편집했습니다). 아마도 그것을 삭제하는 데 도움이 될 것입니다.
Re: 변수가 있는 새 열 만들기MS 감사합니다.
올바른 수식으로 생성된 새 열입니다. 그러나 행이 비어 있습니다. UI의 수식 섹션으로 이동하여 적용을 클릭하면 값 프롬프트만 표시됩니다.
예상되는가?
Re: 변수가 있는 새 열 만들기수식의 변수는 생성될 때 평가되지 않으므로 문자 그대로 표현해야 합니다. 이를 우회하는 한 가지 방법은 문자열을 조작하고 구문 분석하는 것입니다.
예:
dt = 열려 있는 ( "$SAMPLE_DATA/빅 클래스.jmp" ) ;
열 = 열 대화상자 ( 열1 = 콜리스트 ( "엑스" , 최대 열 ( 1 ) , 데이터 형식 ( 숫자 ) ) , 열2 = 콜리스트 ( "와이" , 최대 열 ( 1 ) , , 데이터 형식 ( 숫자 ) ) ) ;
XX열 = 열 [ "콜1" ][ 1 ] << 이름을 얻다 ;
크기 = 열 [ "콜2" ][ 1 ] << 이름을 얻다 ;
평가 ( 구문 분석 ( 평가 삽입 ( "dt << 새 열(\!"myNewColumn\!", 숫자, 연속, 수식(Ceiling( ^XXColumn^ / ^Size^) * ^Size^))" ) ) ) ;