gpt4 book ai didi

python - pyfits : change column name/format

转载 作者:太空宇宙 更新时间:2023-11-03 18:00:15 25 4
gpt4 key购买 nike

我正在尝试连接 pyfits 中的文件。因为它们没有正确完成,所以我的输入文件之间的列名称之一和列格式之一不相同,因此我无法使用 np.concatenate 连接 ndarray ...

我想更改列名称(以巧妙的方式)。我在 pyfits 文档中找到了 pyfits.Coldefs.change_name 函数( http://pythonhosted.org/pyfits/api_docs/api_tables.html#coldefs ),所以这就是我现在正在做的事情:

hdu = pyfits.open(myfile,memmap=True)[1]
new_columns = pyfits.ColDefs(hdu.columns).change_name(prev_name,new_name)

我也尝试过:

hdu = pyfits.open(myfile,memmap=True)[1]
new_columns = pyfits.ColDefs(hdu.columns).change_attrib(prev_name,'names',new_name)

这将返回一个 None 类型对象。我缺少什么吗?

谢谢

最佳答案

虽然我之前对这个问题的评论仍然有效,但我实际上在 Astropy v1.0.2 中修复了这个问题,以便这些方法现在基本上可以工作( https://github.com/astropy/astropy/pull/3283 )。要重命名列,很简单:

hdu.columns[prev_name] = new_name

这将在 Numpy 数组本身以及将表写回 FITS 时重命名该列。

更改格式并不那么简单,目前需要创建一个新表。

关于python - pyfits : change column name/format,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27796092/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com