요약 메시지를 테이블로 보내고 있습니다. 괄호 안의 모든 내용은 요약 메시지 (예 : 그룹, 범위)에 대한 인수입니다.
새 열을 추가 할 수는 없습니다. 요약 메시지에 유효한 매개 변수가 아닙니다. 그러나 테이블로 보낼 수있는 메시지입니다. 따라서 요약 테이블을 먼저 작성한 다음 새 열 메시지를 다음으로 보내십시오.
dtSumm = DataTable("data") << Summary( . . . );
dtSumm << NewColumn( . . .);Data Table( "Data" ) << Summary(
Group( :Row, :Col ),
Range( :Data Trace ),
New Column("ABC",formula(:Range(Data Trace)*1E15)),
Freq( "None" ),
Weight( "None" )
);
위와 같이 새 열을 만들려고합니다. 여기서 위의 줄에 1E15만큼 열을 여러 개 만듭니다. 테이블이 생성되었지만 새 "ABC"열이 표시되지 않습니다. 어쩌면 내 구문에 문제가있을 수 있습니다. 모든 아이디어를 가장 환영합니다. 고마워 마크
안녕 데이빗, 답장을 보내 주셔서 감사합니다. 완전한 초보자로서 나는 문법에 익숙하지 않습니다. 아래에 전체 스크립트를 복사했습니다. 여러 파일을 선택하고 각 테이블을 생성 한 다음 데이터를 단일 테이블로 연결 한 다음 요약 테이블을 생성하고 히트 맵 그래프를 생성 할 수 있습니다. 요약 테이블에서 "범위"는 히트 맵의 변수 별 색상입니다. 그러나 값에 1E15를 곱하고 그래프에 제목을 넣을 수도 있습니다. 이 작업을 수행하는 방법을 잘 모르겠지만 한두 줄만 사용하거나 무언가 앞에 * 1E15를 추가해야한다고 생각합니다. 내가하고 싶은 일이 너무 쉽지만 프로그래머가 아닌 것이 매우 어려워서 실망합니다 (언어 / 구문으로 어려움을 겪고 있습니다)
names = Pick File(
"Select Data File",
"$DESKTOP",
{"Text Files|txt;csv", "All Files|*"},
1,
0,
"Data",
multiple
);
nitems = N Items(names);
path = substr(names[1],2,Contains(names[1],"/",-1)-1);
For(i=1, i <= nitems, i++, names[i] = substr(words(names[i],"/"),7));
names = Files In Directory(path);
Data = New Table("Data", Character, Nominal);
col = New Column( "DC Bias Volt", Numeric, "Continuous", Format( "Best", 12 ) );
col = New Column( "Data Trace", Numeric, "Continuous", Format( "Best", 12 ) );
col = New Column( "File" );
col = New Column( "Row" );
col = New Column( "Col" );
For(i=1, i <= nitems, i++,
dt = Open(Concat(path, names[i]),
columns(
New Column( "DC Bias Volt", Numeric, "Continuous", Format( "Best", 12 ) ),
New Column( "Data Trace", Numeric, "Continuous", Format( "Best", 12 ) ),
New Column( "Memory Trace", Numeric, "Continuous", Format( "Best", 12 ) )
),
Import Settings(
End Of Line( CRLF, CR, LF ),
End Of Field( Tab, CSV( 0 ) ),
Strip Quotes( 1 ),
Use Apostrophe as Quotation Mark( 0 ),
Use Regional Settings( 0 ),
Scan Whole File( 1 ),
Treat empty columns as numeric( 0 ),
CompressNumericColumns( 0 ),
CompressCharacterColumns( 0 ),
CompressAllowListCheck( 0 ),
Labels( 1 ),
Column Names Start( 6 ),
Data Starts( 7 ),
Lines To Read( 101 ),
Year Rule( "20xx" )
)
);
Metadata = Words(names[i], "_");
Die_Row = Substr( Metadata[6], 2, 2 );
Die_Col = Substr( Metadata[6], 5, 2 );
dt << New Column( "File", Numeric, Nominal );
dt << New Column( "Row", Character, Nominal );
dt << New Column( "Col", Character, Nominal );
:File << Set Each Value( i );
:Row << Set Each Value( Die_Row );
:Col << Set Each Value( Die_Col );
If(Metadata[1] == "CSV",
Data << Concatenate( dt, "Append to First Table" ));
Close(dt,NoSave);
);
Data Table( "Data" ) << Summary(
Group( :Row, :Col ),
Range( :Data Trace ),
Freq( "None" ),
Weight( "None" )
);
Graph Builder(
Size( 1112, 704 ),
Variables( X( :Col ), Y( :Col ), Color( :Name( "Range(Data Trace)" ) ) ),
Elements( Heatmap( X, Y, Legend( 5 ) ) ),
SendToReport(
Dispatch(
{},
"Col",
ScaleBox,
{Min( 0 ), Max( 60 ), Inc( 1 ), Minor Ticks( 0 )}
),
Dispatch(
{},
"Col",
ScaleBox( 2 ),
{Min( 0 ), Max( 60 ), Inc( 1 ), Minor Ticks( 0 )}
)
)
);