Simple FITS files I/O package
Project description
============================================
pycfitsio: Python ctypes wrapper for cfitsio
============================================
Features
========
* read binary tables using hdu and column names into simple dictionaries of arrays
* write FITS files incrementally 1 HDU at a time
Requirements
============
pycfitsio requires the dynamic library cfitsio, in linux it usually packaged as libcfitsio-dev
Install
=======
pip install pycfitsio #stable version
# for development version clone from github and run
python setup.py install
Examples
=======
Reading
_______
>>> f = pycfitsio.open("debug/data.fits")
>>> hdulist = f.HDUs
>>> print(hdulist)
OrderedDict([('DATA', HDU: DATA)])
>>> hdu = f['DATA']
>>> column_array = f['DATA'].read_column('signal')
>>> all_columns = f['DATA'].read_all()
>>> print(all_columns)
OrderedDict([('signal', array([ 0., 1. ....])), 'flag', array([1, 1, ....])])
Writing
_______
>>> from collections import OrderedDict
>>> f = pycfitsio.create('file.fits')
3 options to write HDUs:
#. list of (name, array) tuples
>>> f.write_HDU('HDUNAME',
[('firstcolname', np.arange(10)), ('seccolname', np.arange(10)**2)]
)
#. OrderedDict keys = name values = array
>>> data = OrderedDict()
>>> data['firstcolname'] = np.arange(10)
>>> data['seccolname'] = np.arange(10)**2
>>> f.write_HDU('HDUNAME', data)
#. Compound numpy array
>>> data = np.ones(10, dtype = [('firstcolname', np.long), ('seccolname', np.double)])
>>> f.write_HDU('HDUNAME', data)
>>> f.close()
pycfitsio: Python ctypes wrapper for cfitsio
============================================
Features
========
* read binary tables using hdu and column names into simple dictionaries of arrays
* write FITS files incrementally 1 HDU at a time
Requirements
============
pycfitsio requires the dynamic library cfitsio, in linux it usually packaged as libcfitsio-dev
Install
=======
pip install pycfitsio #stable version
# for development version clone from github and run
python setup.py install
Examples
=======
Reading
_______
>>> f = pycfitsio.open("debug/data.fits")
>>> hdulist = f.HDUs
>>> print(hdulist)
OrderedDict([('DATA', HDU: DATA)])
>>> hdu = f['DATA']
>>> column_array = f['DATA'].read_column('signal')
>>> all_columns = f['DATA'].read_all()
>>> print(all_columns)
OrderedDict([('signal', array([ 0., 1. ....])), 'flag', array([1, 1, ....])])
Writing
_______
>>> from collections import OrderedDict
>>> f = pycfitsio.create('file.fits')
3 options to write HDUs:
#. list of (name, array) tuples
>>> f.write_HDU('HDUNAME',
[('firstcolname', np.arange(10)), ('seccolname', np.arange(10)**2)]
)
#. OrderedDict keys = name values = array
>>> data = OrderedDict()
>>> data['firstcolname'] = np.arange(10)
>>> data['seccolname'] = np.arange(10)**2
>>> f.write_HDU('HDUNAME', data)
#. Compound numpy array
>>> data = np.ones(10, dtype = [('firstcolname', np.long), ('seccolname', np.double)])
>>> f.write_HDU('HDUNAME', data)
>>> f.close()
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pycfitsio-0.3.0.tar.gz
(21.5 kB
view details)
File details
Details for the file pycfitsio-0.3.0.tar.gz
.
File metadata
- Download URL: pycfitsio-0.3.0.tar.gz
- Upload date:
- Size: 21.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ba888de8d42bdc88405f22e901447344e4aad573547f2a8746a143f53646295b |
|
MD5 | 3ae31bd80e375b8d26d0f597e4ddb721 |
|
BLAKE2b-256 | 8f221cc23e5a6991c9bf7f3cb20cc962695aeea04a5359f3d4fd5bc975c5d9e9 |