我目前正在处理一些fits表格,并在Astropy.io.fits中输出时遇到了麻烦。基本上,我正在切割一些包含我不感兴趣的对象数据的行,但是当我保存新表后,所有这些行都神奇地重新出现了。
例如:
例如:
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"有4行,如果您使用np.size()函数,那就会得到这个结果。因此,如果我保存"hdu_sliced",新的fits文件也将有4行:
new_hdu = fits.BinTableHDU.from_columns(fits.ColDefs(hdu_sliced.columns))
new_hdu.writeto('new_fits_file.fits')
np.size(hdu3)
6
我使用的切片方法去除的两行在表格中并未被删除,最终生成的文件和原始文件没有任何区别。
请问如何在表格中删除不需要的行,并将新数据输出到新文件中?
谢谢, Ashley
type(hdu) == fits.fitsrec.FITS_rec
是吗? - Vlas Sokolov