人生的意义就是思考其意义分享 http://blog.sciencenet.cn/u/qianlivan 天体物理工作者,家乡云南昆明。

博文

python模块fitsio

已有 5879 次阅读 2016-4-1 20:50 |个人分类:知识|系统分类:科研笔记| Python, fitsio

      python有一个常用的读写fits文件的模块,即pyfits,但是用得多了就会感觉到pyfits的局限性。pyfits读fits文件的时候是把整个文件都读入内存的,所以对于某些大文件,不是每台计算机都可以读出来的,即使是大内存的服务器,有时候读出数据来,进行一些操作以后有可能就内存不够的,如果处理过程中对数组进行了某些操作的话。因而如何读文件的一部分就成了一个重要问题。
      C语言库cfitsio继承了C语言的特点,可以非常自由地读取fits文件。最近发现,这个库已经有python包装了,称为fitsio。这样一来就方便了,可以只读取某些列,也可以只读取某些行。例子如下,给我自己看的。
     
import fitsio
filename='gen_scantable.fits'
#data=fitsio.read(filename,rows=0,columns=25,ext=1)
data=fitsio.read(filename,rows=0,columns='data',ext=1)
#print data[0,0,1,:]
print data[0,0,0,:]
#         null,null,[0,1],[0,1,...]

https://pypi.python.org/pypi/fitsio/0.9.2 


data2=fitsio.read(filename,rows=0,columns='data')
print data2
os.system('rm -f test_fitsio.fits')
fitsio.write('test_fitsio.fits',data2)






https://blog.sciencenet.cn/blog-117333-967333.html

上一篇:准备好,移民太空吧——《太空移民我们准备好了吗》书评
下一篇:思考题(三十八)春、秋季多风和昼夜长短变化速率有何关系?
收藏 IP: 159.226.171.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-7-28 06:25

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部