루프에서 행렬 추가다음 스크립트를 사용하여 행렬을 생성하려고 하는데 몇 가지 질문이 있습니다.
1. "행"을 올바르게 얻으려면 먼저 과일 열을 정렬해야 합니까? "r"에서 숫자 하나만 선택하는 무작위 공식이 있나요?
2. furitName 정보(i 변수)가 포함된 최종 "실행" 행렬이 필요하며 단 하나의 행렬이어야 합니다. 내가 가지고 있는 현재 스크립트는 3개의 실행 행렬을 생성합니다(N개 항목(과일 이름)에 따라 다름).
3. 모든 실행 행렬이 하나로 연결되면 행렬을 데이터 테이블로 출력하는 방법이 있습니까?
사랑!
Names Default To Here( 1 );
dt = Current Data Table();
Summarize( dt, fruitName = by( :fruit ) );
For( i = 1, i <= N Items( fruitName ), i++,
r = dt << get rows where( :fruit == fruitName[i] );
row = Random Integer( Max( r ) - Min( r ) );
/*show(r);
show(row);*/
runTime = 5;
run = [](0, 2);
For( j = 1, j <= runTime, j++,
row = Random Integer( Max( r ) - Min( r ) );
run |/= Matrix( {{j, dt:name( "price hi" )[row] - dt:price lo[row]}} );
);
Show( run );
);
자동화 및 스크립팅Re: 루프에서 행렬을 추가합니다.이 기능은 유용할 수 있습니다.

Re: 루프에서 행렬을 추가합니다.다음은 귀하가 찾고 있다고 생각하는 몇 가지 방법입니다.
Names Default To Here( 1 );
dt = Current Data Table();
Summarize( dt, fruitName = by( :fruit ) );
runTime = 5;
run = [](0, 2);
fruitList ={};
For( i = 1, i <= N Items( fruitName ), i++,
r = dt << get rows where( :fruit == fruitName[i] );
For( j = 1, j <= runTime, j++,
insert into(fruitList, fruitName[i]);
row = r[Random Integer( nrows(r))];
run |/= Matrix( {{j, dt:name( "price hi" )[row] - dt:price lo[row]}} );
);
);
dtNew = New Table("Random",
add rows(n rows(run)),
new column("Fruit", character,set each value(fruitList[Row()])),
new column("Delta", set each value(run[row(),2]))
);
// or
dtNew2 = dt << Subset(
Sample Size( runTime ),
Selected columns only( 0 ),
Stratify( :fruit )
);
dtNew2 << New Column( "Delta", set each value( :price hi - :price lo ) );
dtNew2 << delete columns( {"price hi", "price lo"} );