Skip to main content

Read FITS files in Dask Arrays.

Project description

da-fits

Read FITS files into Dask Arrays. Currently a very simple implementation.

Inspired by:

Installation

Install from PyPi

pip install dafits

Or, from GitHub:

pip install git+https://github.com/AlecThomson/da-fits.git

Example usage

import dafits

# See doctstring
help(dafits.read)
# Help on function read in module dafits.core:

# read(file: str, ext=0, memmap=True, mode='denywrite', chunks='auto', return_header=False) -> Tuple[dask.array.core.Array, Optional[Dict]]
#     Read FITS file to DataArray.

#     Args:
#         file (str): FITS file to read.
#         ext (int, optional): FITS extension to read. Defaults to 0.
#         memmap (bool, optional): Use memmap. Defaults to True.
#         mode (str, optional): Read mode. Defaults to "denywrite".
#         chunks (str, optional): Dask array chunks. Defaults to "auto".
#         return_header (bool, optional): Optionally return the FITS header. Defaults to False.

#     Returns:
#         typing.Tuple[da.Array, typing.Optional[typing.Dict]]: DataArray and (optionally) FITS header.

# Read a file with header
data, header = dafits.read('/path/to/file.fits', return_header=True)

# Get data in memory
data.compute()

# Do some kind of maths
new_data = data.mean(axis=0)

# Write to disk (via Zarr)
# See doctstring
help(dafits.write)
# Help on function write in module dafits.core:

# write(file: str, data: dask.array.core.Array, header=None, verbose=True, **kwargs) -> None
#     Write DataArray to FITS file (via Zarr).

#     Args:
#         file (str): Output filename.
#         data (da.Array): Input data.
#         header (header, optional): FITS header. Defaults to None.
#         verbose (bool, optional): Verbose output. Defaults to True.
#         **kwargs: Additional keyword arguments passed onto fits.writeto.


dafits.write('/path/to/new_file.fits', new_data, header=header, overwrite=True)

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

dafits-1.0.0.tar.gz (4.3 kB view details)

Uploaded Source

Built Distribution

dafits-1.0.0-py2.py3-none-any.whl (5.2 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file dafits-1.0.0.tar.gz.

File metadata

  • Download URL: dafits-1.0.0.tar.gz
  • Upload date:
  • Size: 4.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/3.10.0 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.9.6

File hashes

Hashes for dafits-1.0.0.tar.gz
Algorithm Hash digest
SHA256 6124b04c263168aa73ec75b255c08db83efa23a4da1d29aae726ce23f1ecebfd
MD5 238b46f3c8f4f0829003b220a7ccf381
BLAKE2b-256 42059ab076c85caeee13ff45989372a0c41c79cbb451e8e598144f09eb1be8bd

See more details on using hashes here.

File details

Details for the file dafits-1.0.0-py2.py3-none-any.whl.

File metadata

  • Download URL: dafits-1.0.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/3.10.0 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.9.6

File hashes

Hashes for dafits-1.0.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 3c96873864420bc0371804c1b637d48a0bfb7f3a20c1429a2618f32babdaaba4
MD5 f472d8a644b9a78d661c43c20e93cc5f
BLAKE2b-256 b7571d37c485f563f7725b5667714d5cfc53773a056f0f337360afe15e691d3f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page