注釈
クリック here 完全なサンプルコードをダウンロードします
編集配合ヘッダ¶
この例では、以下のコマンドを用いてFITSヘッダの値を編集する方法を説明します。 astropy.io.fits
それがそうです。
By: Adrian Price-Whelan
ライセンス:BSD
from astropy.io import fits
FITSファイルをダウンロード:
from astropy.utils.data import get_pkg_data_filename
fits_file = get_pkg_data_filename('tutorials/FITS-Header/input_file.fits')
FITSファイルの内容の表示
出て:
Filename: /home/bk/.astropy/cache/download/url/519010d87325a22575dc1d16f3a05d26/contents
No. Name Ver Type Cards Dimensions Format
0 PRIMARY 1 PrimaryHDU 8 (100, 100) float64
1 1 ImageHDU 8 (128, 128) float64
2つの拡張されたヘッダを表示します。
print("Before modifications:")
print()
print("Extension 0:")
print(repr(fits.getheader(fits_file, 0)))
print()
print("Extension 1:")
print(repr(fits.getheader(fits_file, 1)))
出て:
Before modifications:
Extension 0:
SIMPLE = T / conforms to FITS standard
BITPIX = -64 / array data type
NAXIS = 2 / number of array dimensions
NAXIS1 = 100
NAXIS2 = 100
EXTEND = T
OBJECT = 'CAT '
ANEWKEY = 'some value'
Extension 1:
XTENSION= 'IMAGE ' / Image extension
BITPIX = -64 / array data type
NAXIS = 2 / number of array dimensions
NAXIS1 = 128
NAXIS2 = 128
PCOUNT = 0 / number of parameters
GCOUNT = 1 / number of groups
OBJECT = 'CAT '
astropy.io.fits
FITSファイルを読み込み,それとインタラクションするためにオブジェクト指向インタフェースを提供しているが,小さな操作(本例のような)に対しては使用している. convenience functions それがそうです。
拡張0のヘッダ中の単一のヘッダ値を編集する場合は、使用してください setval()
機能します。例えば、Objectキーワードを‘m 31’に設定する。
fits.setval(fits_file, 'OBJECT', value='M31')
追加のパラメータがない場合、これは拡張0のヘッダを修正するが、使用することができる。 ext
キーワードパラメータ。例えば、内線1を指定することができます。
fits.setval(fits_file, 'OBJECT', value='M31', ext=1)
これは、新しいキーワード対(FITS行の“card”)を作成するためにも使用することができる。
fits.setval(fits_file, 'ANEWKEY', value='some value')
同様に、これは一度の修正に有用であるが、同一ファイル中の複数のヘッダを編集するような操作効率が低い可能性があるからである。 setval()
呼び出しごとにファイル全体をロードします。複数回の修正を行うためには、ファイルを1回ロードすることが望ましい:
with fits.open(fits_file, 'update') as f:
for hdu in f:
hdu.header['OBJECT'] = 'CAT'
print("After modifications:")
print()
print("Extension 0:")
print(repr(fits.getheader(fits_file, 0)))
print()
print("Extension 1:")
print(repr(fits.getheader(fits_file, 1)))
出て:
After modifications:
Extension 0:
SIMPLE = T / conforms to FITS standard
BITPIX = -64 / array data type
NAXIS = 2 / number of array dimensions
NAXIS1 = 100
NAXIS2 = 100
EXTEND = T
OBJECT = 'CAT '
ANEWKEY = 'some value'
Extension 1:
XTENSION= 'IMAGE ' / Image extension
BITPIX = -64 / array data type
NAXIS = 2 / number of array dimensions
NAXIS1 = 128
NAXIS2 = 128
PCOUNT = 0 / number of parameters
GCOUNT = 1 / number of groups
OBJECT = 'CAT '
スクリプトの総実行時間: (0分0.027秒)