使用 astropy.io.fits 写入适合的文件
Writing fits files with astropy.io.fits
我正在尝试使用 astropy.io 将数据附加到适合文件。
这是我的代码示例:
import numpy as np
from astropy.io import fits
a1 = np.array([1,2,4,8])
a2 = np.array([0,1,2,3])
hdulist = fits.BinTableHDU.from_columns(
[fits.Column(name='FIRST', format='E', array=a1),
fits.Column(name='SECOND', format='E', array=a2)])
hdulist.writeto('file.fits')
我得到的错误是
type object 'BinTableHDU' has no attribute 'from_columns'
- 这可能是我使用的 astropy.io 版本的问题吗?
- 是否有使用 astropy.io 向适合文件添加扩展名或列的更简单方法?
如有任何帮助,我们将不胜感激。
你必须升级 astropy。
我可以 运行 你的例子很好;这是最新的 astropy 版本。
查看 0.4 的更改日志,看来您的 astropy 版本太旧了。 log says:
The astropy.io.fits.new_table function is now fully deprecated (though
will not be removed for a long time, considering how widely it is
used).
Instead please use the more explicit BinTableHDU.from_columns to
create a new binary table HDU, and the similar TableHDU.from_columns
to create a new ASCII table. These otherwise accept the same arguments
as new_table which is now just a wrapper for these.
暗示 from_columns
是在 0.4
中新引入的
总的来说,如果您确实在使用 astropy 0.3 版,您可能需要升级到 1.0 版或(当前)1.1 版:
虽然 0.3 只有大约 1.5 岁(如果你有 0.3.x 版本的话会更年轻),astropy 的快速发展让它有点过时了日期。界面发生了很多变化,现在您在网上找到的示例很少会适用于您的版本。
既然 astropy 现在是 1.x(.y) 系列,那应该意味着 API 相对稳定:只有很小的变化 运行 进入向后兼容性问题。
版本 1.0(.x) 是 long-term support release,修复了两年的错误。 Astropy 1.0 于 2015 年 2 月 18 日发布,因此如果您正在寻求更高的稳定性,它将持续到 2017 年 2 月 18 日。(其他版本支持六个月的错误修复。但是对于前一点,如果您进行次要版本升级顺便说一句,你应该也很好。)
我正在尝试使用 astropy.io 将数据附加到适合文件。
这是我的代码示例:
import numpy as np
from astropy.io import fits
a1 = np.array([1,2,4,8])
a2 = np.array([0,1,2,3])
hdulist = fits.BinTableHDU.from_columns(
[fits.Column(name='FIRST', format='E', array=a1),
fits.Column(name='SECOND', format='E', array=a2)])
hdulist.writeto('file.fits')
我得到的错误是
type object 'BinTableHDU' has no attribute 'from_columns'
- 这可能是我使用的 astropy.io 版本的问题吗?
- 是否有使用 astropy.io 向适合文件添加扩展名或列的更简单方法?
如有任何帮助,我们将不胜感激。
你必须升级 astropy。
我可以 运行 你的例子很好;这是最新的 astropy 版本。
查看 0.4 的更改日志,看来您的 astropy 版本太旧了。 log says:
The astropy.io.fits.new_table function is now fully deprecated (though will not be removed for a long time, considering how widely it is used).
Instead please use the more explicit BinTableHDU.from_columns to create a new binary table HDU, and the similar TableHDU.from_columns to create a new ASCII table. These otherwise accept the same arguments as new_table which is now just a wrapper for these.
暗示 from_columns
是在 0.4
总的来说,如果您确实在使用 astropy 0.3 版,您可能需要升级到 1.0 版或(当前)1.1 版:
虽然 0.3 只有大约 1.5 岁(如果你有 0.3.x 版本的话会更年轻),astropy 的快速发展让它有点过时了日期。界面发生了很多变化,现在您在网上找到的示例很少会适用于您的版本。
既然 astropy 现在是 1.x(.y) 系列,那应该意味着 API 相对稳定:只有很小的变化 运行 进入向后兼容性问题。
版本 1.0(.x) 是 long-term support release,修复了两年的错误。 Astropy 1.0 于 2015 年 2 月 18 日发布,因此如果您正在寻求更高的稳定性,它将持续到 2017 年 2 月 18 日。(其他版本支持六个月的错误修复。但是对于前一点,如果您进行次要版本升级顺便说一句,你应该也很好。)