보고서를 작성할 때 데이터 테이블을 워드 문서에 zip 파일로 압축하여 나중에 읽는 사람들이 데이터를 추출할 수 있도록 합니다. 그런데 막상 작업을 하다 보면 데이터 테이블 이름을 너무 급하게 지었다는 생각이 들 때가 종종 있습니다 . 그래서 보고서에 저장하기 전에 더 나은 이름을 지정하고 싶습니다.
제가 겪은 문제는 제가 저장한 일부(전부는 아님) 스크립트에 데이터 테이블 이름이 포함되어 있어서 스크립트가 작동을 멈춘다는 것입니다.
이런 문제가 발생하지 않고 데이터 테이블의 이름을 바꿀 수 있는 방법이 있나요?
데이터 테이블에 저장된 스크립트를 매우 강력하게 만들고 싶다면 다음과 같이 간단한 JSL을 추가할 수 있습니다.
//something like this<BR />dt=current data table();
dt<< Distribution(Continuous Distribution( Column( :Protein ) ));
데이터 테이블에 저장된 스크립트를 사용하지 않는 경우, 명시적인 데이터 테이블 이름을 변수로 바꾸는 것이 좋습니다. 이렇게 하면 테이블 이름이 변경되더라도(예: 테이블 이름이 추가되더라도) 스크립트가 제대로 작동합니다.
데이터 테이블("emanon")은 명시적인 테이블 이름입니다.
dt=open("emanon.JMP"); 는 테이블 이름에 대한 참조입니다. dt가 평가되면 data table("emanon")이 되지만, 모든 스크립트에서는 dt만 됩니다.
//original script
Data Table( "trends.jmp" ) << Stack(
columns( :Protein, :Purity ),
Drop All Other Columns( 1 ),
Output Table( "Stack of trends (Protein etc.)" )
);
//edit to variable references
<BR />dt=current datatable(); //or some other way to reference the table you're acting on<BR />
dt1=dt<< Stack(
columns( :Protein, :Purity ),
Drop All Other Columns( 1 ),
Output Table( "Stack of trends (Protein etc.)" )
);
although the table name is "Stack of trends (Protein etc.)" the reference for the new table is dt1, which has the added bonus of being much easier to type than the entire table name (that I would misspell and break the script).
Byron_JMP님, 팁 감사합니다! 해결될 것 같습니다. 문제는 그래프 등에서 생성되는 코드를 많이 저장해야 한다는 점인데, 그중에는 데이터 파일 이름도 포함되어 있습니다. 저는 작업 속도가 빠르고 엉성해서 여러 번 다시 저장합니다. 작업이 끝나면 스크립트를 다시 살펴보고 어떤 스크립트에 파일 이름이 포함되어 있는지 확인해야 할 것 같습니다. 이 스크립트는 특정 실험을 위해 연구하는 데이터입니다. 장기간 사용하거나 공유할 수 있는 데이터의 경우, 제안해 주신 해결책을 사용하는 것이 좋을 것 같습니다.
스크립트에서 테이블 이름을 변경하거나 테이블 이름을 다르게 해석할 수 있는 기능이 있으면 좋을 것 같습니다. 하지만 아직 자세히 생각해 보지는 못했습니다. 다른 문제가 발생할 수도 있겠네요.