私は現在、いくつかのフィットテーブルを扱っています。私はAstropy.io.fitsでの出力に問題があります。基本的には、興味のないオブジェクトのデータを含む行を切り出していますが、新しいテーブルを保存すると、それらの行がすべて魔法のように再現されました。例えばAstropy Fit:行をスライスしてテーブルを書き出す方法は?
:
import astropy.io.fits as fits
import numpy as np
hdu = fits.open('some_fits_file.fits')[1].data
sample_slice = [True True True False False True]
hdu_sliced = hdu[sample_slice]
今私の素朴な心は)「HDU」は6行があり、hdu_slicedはあなたがnp.sizeを(使用している場合、あなたが得るだろうかである、4行があることを期待しています。私はhdu_sliced保存すると、新しいフィットファイルも4行がありますので:
new_hdu = fits.BinTableHDU.from_columns(fits.ColDefs(hdu_sliced.columns))
new_hdu.writeto('new_fits_file.fits')
np.size(hdu3)
6
をだから私はスライスに処分したこれら2つの行が実際にはテーブルと出力ファイルから削除されていないいくつかの理由であります元のファイルとまったく同じです。
テーブルから削除したい行を削除して、その新しいデータを新しいファイルに出力するにはどうすればよいですか?
乾杯、 アシュリー
はfits.fitsrec.FITS_rec' == 'タイプ(HDU)ですか? –
はい、そのタイプです。 – AshleyNova