我正在尝试通过向其添加一些新列来更新FITS表扩展。我遵循http://pyfits.readthedocs.org/en/latest/users_guide/users_table.html#merging-tables给出的方法。但是,合并表的标头仅包含标识列所需的最小信息。我需要原始头文件中的信息。如何将旧表中的所有额外关键字带到新表中?
我已经尝试了
merged_table.header = old_table.header
并手动添加新列的必要条目,但这总是会破坏标题并使整个FITS文件不可读。
由于
答案 0 :(得分:1)
对此的最佳答案部分取决于新表的创建方式,但是从最新版本的PyFITS(v3.3.0)或Astropy(v0.4.2)开始,BinTableHDU.from_columns
方法创建了一个来自一组列定义的新BINARY表HDU接受可选的header
参数,该参数可以接收来自原始表HDU的标题。
这将忽略与FITS格式所理解的表结构相关的任何关键字,并且仅保留其他元数据。我相信有一个错误,header
参数被忽略,但现在应该修复。