matlab.io.fits.createTbl
새 ASCII 또는 Binary 테이블 확장 생성
구문
fptr = createTbl(fptr,tbltype,nrows,ttype,tform,tunit,extname)
설명
fptr = createTbl(fptr,tbltype,nrows,ttype,tform,tunit,extname)
은 새 ASCII 또는 bintable 테이블 확장을 만듭니다. tbltype
은 'binary'
이거나 'ascii'
여야 합니다. nrows
인수는 테이블에 생성할 초기 행 개수를 지정하며, 일반적으로 0이어야 합니다. tunit
은 각 열의 단위를 지정하지만, 원하는 단위가 없는 경우 빈 셀형 배열이 될 수 있습니다. extname
은 확장 이름을 지정하며, 생략 가능합니다.
tform
은 열의 형식을 포함하며, 문자형 벡터로 구성된 셀형 배열 또는 string형 배열로 지정됩니다. Binary 테이블의 경우 값은 'rt'
형식이어야 합니다. 여기서 'r'
은 반복 횟수이며, 't'
는 다음 문자 중 하나입니다.
'A' | ASCII 문자 |
'B' | 바이트 또는 uint8 형 |
'C' | 복소수(단정밀도) |
'D' | 배정밀도 |
'E' | 단정밀도 |
'I' | int16 |
'J' | int32 |
'K' | int64 |
'L' | 논리형 |
'M' | 복소수(배정밀도) |
'X' | 비트(int8 형 0과 1) |
tform
값이 '1Pt'
또는 '1Qt'
형식일 경우 열을 가변 너비를 갖도록 지정할 수도 있습니다. 여기서 't'
는 위와 같이 데이터형을 지정합니다.
ASCII 테이블의 경우 tform
은 다음과 같은 형식의 값을 포함합니다.
'Iw' | int16 열, 너비: 'w' |
'Aw' | 너비가 'w' 인 ASCII 열 |
'Fww.dd' | 고정소수점 |
'Eww.dd' | 너비가 'ww' 이고 정밀도가 'dd' 인 단정밀도 |
'Dww.dd' | 너비가 'ww' 이고 정밀도가 'dd' 인 배정밀도 |
이 함수는 CFITSIO 라이브러리 C API의 fits_create_tbl(ffcrtb)
함수에 대응합니다.
예제
Binary 테이블을 만듭니다. 첫 번째 열에는 각각 9자로 된 문자열이 포함됩니다. 두 번째 열에는 요소를 4개 가진 비트의 시퀀스가 포함됩니다. 세 번째 열에는 요소를 3개 가진 uint8
형 값의 시퀀스가 포함됩니다. 네 번째 열에는 배정밀도 스칼라가 포함됩니다.
import matlab.io.* fptr = fits.createFile('myfile.fits'); ttype = {'Col1','Col2','Col3','Col4'}; tform = {'9A','4X','3B','1D'}; tunit = {'m/s','kg','kg/m^3','candela'}; fits.createTbl(fptr,'binary',10,ttype,tform,tunit,'my-table'); fits.closeFile(fptr); fitsdisp('myfile.fits');
첫 번째 열에는 단일 배정밀도 값이 포함되고 두 번째 열에는 가변 길이 배정밀도 값이 포함된 2열의 테이블을 만듭니다.
import matlab.io.* fptr = fits.createFile('myfile2.fits'); ttype = {'Col1','Col2'}; tform = {'1D','1PD'}; fits.createTbl(fptr,'binary',0,ttype,tform); fits.closeFile(fptr); fitsdisp('myfile2.fits');
참고 항목
insertATbl
| insertBTbl
| readCol
| writeCol
| createImg