midgard.data
midgard.data._h5utils
Simple utilities used by Dataset when dealing with HDF5 files
dict2h5attr()
Full name: midgard.data._h5utils.dict2h5attr
Signature: (dct:Dict[str, str]) -> str
Convert a dictionary to a string that can be stored as an HDF5 attribute
h5attr2dict()
Full name: midgard.data._h5utils.h5attr2dict
Signature: (attr:str) -> List[str]
Convert an HDF5 attribute to a dictionary of strings
h5attr2list()
Full name: midgard.data._h5utils.h5attr2list
Signature: (attr:str) -> List[str]
Convert an HDF5 attribute to a list of strings
h5attr2tuple()
Full name: midgard.data._h5utils.h5attr2tuple
Signature: (attr:str) -> Tuple[str, ...]
Convert an HDF5 attribute to a list of strings
sequence2h5attr()
Full name: midgard.data._h5utils.sequence2h5attr
Signature: (lst:Sequence[str]) -> str
Convert a list to a string that can be stored as an HDF5 attribute
midgard.data._position
Array with positions
LlhPosition
Full name: midgard.data._position.LlhPosition
Signature: (val, **pos_args)
LlhPosition.aberrated_direction_to()
Full name: midgard.data._position.aberrated_direction_to
Signature: (self, other)
LlhPosition.aberrated_elevation_to()
Full name: midgard.data._position.aberrated_elevation_to
Signature: (self, other)
LlhPosition.aberration_to()
Full name: midgard.data._position.aberration_to
Signature: (self, other)
LlhPosition.azimuth_to()
Full name: midgard.data._position.azimuth_to
Signature: (self, other)
LlhPosition.column_names (tuple)
column_names = ('lat', 'lon', 'height')
LlhPosition.create()
Full name: midgard.data._position.create
Signature: (val:numpy.ndarray, system:str, **pos_args:Any) -> 'PositionArray'
Factory for creating PositionArrays for different systems
See each position class for exact optional parameters.
Args:
val: Array of position values.system: Name of position system.pos_args: Additional arguments used to create the PositionArray.
Returns:
Array with positions in the given system.
LlhPosition.direction_to()
Full name: midgard.data._position.direction_to
Signature: (self, other)
LlhPosition.distance_to()
Full name: midgard.data._position.distance_to
Signature: (self, other)
Distance to other positions in current system
Args:
other: Other position array
Returns:
Array of distances to other position array.
LlhPosition.elevation_to()
Full name: midgard.data._position.elevation_to
Signature: (self, other)
LlhPosition.from_position()
Full name: midgard.data._position.from_position
Signature: (val:numpy.ndarray, other:'PositionArray') -> 'PositionArray'
Create a new position with given values and same attributes as other position
Factory method for creating a new position array with the given values. Attributes will be copied from the other position.
LlhPosition.system (str)
system = 'llh'
LlhPosition.to_system()
Full name: midgard.data._position.to_system
Signature: (self, system:str) -> 'PositionArray'
Convert position to a different system
Returns a new PositionArray with the same position in the new system.
Args:
system: Name of new system.
Returns:
PositionArray representing the same positions in the new system.
LlhPosition.unit()
Full name: midgard.data._position.unit
Signature: (field:str='') -> Tuple[str, ...]
Unit of field
LlhPosition.vector_to()
Full name: midgard.data._position.vector_to
Signature: (self, other:'PositionArray') -> numpy.ndarray
Vector to other positions in current system
Args:
other: Other position array.
Returns:
Array of vectors to other position array.
LlhPosition.zenith_distance_to()
Full name: midgard.data._position.zenith_distance_to
Signature: (self, other)
PositionArray
Full name: midgard.data._position.PositionArray
Signature: (val, **pos_args)
Base class for Position arrays
This PositionArray should not be instatiated. Instead instantiate one of the system specific subclasses, typically using the Position factory function.
PositionArray.aberrated_direction_to()
Full name: midgard.data._position.aberrated_direction_to
Signature: (self, other)
PositionArray.aberrated_elevation_to()
Full name: midgard.data._position.aberrated_elevation_to
Signature: (self, other)
PositionArray.aberration_to()
Full name: midgard.data._position.aberration_to
Signature: (self, other)
PositionArray.azimuth_to()
Full name: midgard.data._position.azimuth_to
Signature: (self, other)
PositionArray.column_names (NoneType)
column_names = None
PositionArray.create()
Full name: midgard.data._position.create
Signature: (val:numpy.ndarray, system:str, **pos_args:Any) -> 'PositionArray'
Factory for creating PositionArrays for different systems
See each position class for exact optional parameters.
Args:
val: Array of position values.system: Name of position system.pos_args: Additional arguments used to create the PositionArray.
Returns:
Array with positions in the given system.
PositionArray.direction_to()
Full name: midgard.data._position.direction_to
Signature: (self, other)
PositionArray.distance_to()
Full name: midgard.data._position.distance_to
Signature: (self, other)
Distance to other positions in current system
Args:
other: Other position array
Returns:
Array of distances to other position array.
PositionArray.elevation_to()
Full name: midgard.data._position.elevation_to
Signature: (self, other)
PositionArray.from_position()
Full name: midgard.data._position.from_position
Signature: (val:numpy.ndarray, other:'PositionArray') -> 'PositionArray'
Create a new position with given values and same attributes as other position
Factory method for creating a new position array with the given values. Attributes will be copied from the other position.
PositionArray.system (NoneType)
system = None
PositionArray.to_system()
Full name: midgard.data._position.to_system
Signature: (self, system:str) -> 'PositionArray'
Convert position to a different system
Returns a new PositionArray with the same position in the new system.
Args:
system: Name of new system.
Returns:
PositionArray representing the same positions in the new system.
PositionArray.unit()
Full name: midgard.data._position.unit
Signature: (field:str='') -> Tuple[str, ...]
Unit of field
PositionArray.vector_to()
Full name: midgard.data._position.vector_to
Signature: (self, other:'PositionArray') -> numpy.ndarray
Vector to other positions in current system
Args:
other: Other position array.
Returns:
Array of vectors to other position array.
PositionArray.zenith_distance_to()
Full name: midgard.data._position.zenith_distance_to
Signature: (self, other)
TrsPosition
Full name: midgard.data._position.TrsPosition
Signature: (val, **pos_args)
TrsPosition.aberrated_direction_to()
Full name: midgard.data._position.aberrated_direction_to
Signature: (self, other)
TrsPosition.aberrated_elevation_to()
Full name: midgard.data._position.aberrated_elevation_to
Signature: (self, other)
TrsPosition.aberration_to()
Full name: midgard.data._position.aberration_to
Signature: (self, other)
TrsPosition.azimuth_to()
Full name: midgard.data._position.azimuth_to
Signature: (self, other)
TrsPosition.column_names (tuple)
column_names = ('x', 'y', 'z')
TrsPosition.create()
Full name: midgard.data._position.create
Signature: (val:numpy.ndarray, system:str, **pos_args:Any) -> 'PositionArray'
Factory for creating PositionArrays for different systems
See each position class for exact optional parameters.
Args:
val: Array of position values.system: Name of position system.pos_args: Additional arguments used to create the PositionArray.
Returns:
Array with positions in the given system.
TrsPosition.direction_to()
Full name: midgard.data._position.direction_to
Signature: (self, other)
TrsPosition.distance_to()
Full name: midgard.data._position.distance_to
Signature: (self, other)
Distance to other positions in current system
Args:
other: Other position array
Returns:
Array of distances to other position array.
TrsPosition.elevation_to()
Full name: midgard.data._position.elevation_to
Signature: (self, other)
TrsPosition.from_position()
Full name: midgard.data._position.from_position
Signature: (val:numpy.ndarray, other:'PositionArray') -> 'PositionArray'
Create a new position with given values and same attributes as other position
Factory method for creating a new position array with the given values. Attributes will be copied from the other position.
TrsPosition.system (str)
system = 'trs'
TrsPosition.to_system()
Full name: midgard.data._position.to_system
Signature: (self, system:str) -> 'PositionArray'
Convert position to a different system
Returns a new PositionArray with the same position in the new system.
Args:
system: Name of new system.
Returns:
PositionArray representing the same positions in the new system.
TrsPosition.unit()
Full name: midgard.data._position.unit
Signature: (field:str='') -> Tuple[str, ...]
Unit of field
TrsPosition.vector_to()
Full name: midgard.data._position.vector_to
Signature: (self, other:'PositionArray') -> numpy.ndarray
Vector to other positions in current system
Args:
other: Other position array.
Returns:
Array of vectors to other position array.
TrsPosition.zenith_distance_to()
Full name: midgard.data._position.zenith_distance_to
Signature: (self, other)
register_attribute()
Full name: midgard.data._position.register_attribute
Signature: (name:str) -> None
Function used to register new attributes on position arrays
The registered attributes will be available as attributes on PositionArray and its subclasses. In addition, each attribute can be given as a parameter when creating a PositionArray.
The reason for using this register-function instead of a regular attribute is to allow additional attributes to be added on all position systems.
Args:
name: Name of attribute
register_field()
Full name: midgard.data._position.register_field
Signature: (units:List[str]) -> Callable
Decorator used to register fields and their units
register_system()
Full name: midgard.data._position.register_system
Signature: (convert_to:Dict[str, Callable]=None, convert_from:Dict[str, Callable]=None) -> Callable[[Callable], Callable]
Decorator used to register new position systems
The system name is read from the .system attribute of the Position class.
Args:
convert_to: Functions used to convert to other systems.convert_from: Functions used to convert from other systems.
Returns:
Decorator registering system.
midgard.data._position_delta
Array with positions
EnuPositionDelta
Full name: midgard.data._position_delta.EnuPositionDelta
Signature: (val, ref_pos, **delta_args)
EnuPositionDelta.column_names (tuple)
column_names = ('east', 'north', 'up')
EnuPositionDelta.create()
Full name: midgard.data._position_delta.create
Signature: (val:numpy.ndarray, system:str, ref_pos, **delta_args:Any) -> 'PositionDeltaArray'
Factory for creating PositionDeltaArrays for different systems
See each position delta class for exact optional parameters.
Args:
val: Array of position deltas.system: Name of position system.ref_pos: Array of reference positions.delta_args: Additional arguments used to create the PositionDeltaArray.
Returns:
Array with positions in the given system.
EnuPositionDelta.system (str)
system = 'enu'
EnuPositionDelta.to_system()
Full name: midgard.data._position_delta.to_system
Signature: (self, system:str) -> 'PositionDeltaArray'
Convert position to a different system
Returns a new PositionDeltaArray with the same position in the new system.
Args:
system: Name of new system.
Returns:
PositionDeltaArray representing the same positions in the new system.
PositionDeltaArray
Full name: midgard.data._position_delta.PositionDeltaArray
Signature: (val, ref_pos, **delta_args)
Base class for position deltas
This PositionDeltaArray should not be instatiated. Instead instantiate one of the system specific subclasses, typically using the PositionDelta factory function.
PositionDeltaArray.column_names (NoneType)
column_names = None
PositionDeltaArray.create()
Full name: midgard.data._position_delta.create
Signature: (val:numpy.ndarray, system:str, ref_pos, **delta_args:Any) -> 'PositionDeltaArray'
Factory for creating PositionDeltaArrays for different systems
See each position delta class for exact optional parameters.
Args:
val: Array of position deltas.system: Name of position system.ref_pos: Array of reference positions.delta_args: Additional arguments used to create the PositionDeltaArray.
Returns:
Array with positions in the given system.
PositionDeltaArray.system (NoneType)
system = None
PositionDeltaArray.to_system()
Full name: midgard.data._position_delta.to_system
Signature: (self, system:str) -> 'PositionDeltaArray'
Convert position to a different system
Returns a new PositionDeltaArray with the same position in the new system.
Args:
system: Name of new system.
Returns:
PositionDeltaArray representing the same positions in the new system.
TrsPositionDelta
Full name: midgard.data._position_delta.TrsPositionDelta
Signature: (val, ref_pos, **delta_args)
TrsPositionDelta.column_names (tuple)
column_names = ('x', 'y', 'z')
TrsPositionDelta.create()
Full name: midgard.data._position_delta.create
Signature: (val:numpy.ndarray, system:str, ref_pos, **delta_args:Any) -> 'PositionDeltaArray'
Factory for creating PositionDeltaArrays for different systems
See each position delta class for exact optional parameters.
Args:
val: Array of position deltas.system: Name of position system.ref_pos: Array of reference positions.delta_args: Additional arguments used to create the PositionDeltaArray.
Returns:
Array with positions in the given system.
TrsPositionDelta.system (str)
system = 'trs'
TrsPositionDelta.to_system()
Full name: midgard.data._position_delta.to_system
Signature: (self, system:str) -> 'PositionDeltaArray'
Convert position to a different system
Returns a new PositionDeltaArray with the same position in the new system.
Args:
system: Name of new system.
Returns:
PositionDeltaArray representing the same positions in the new system.
delta_enu2trs()
Full name: midgard.data._position_delta.delta_enu2trs
Signature: (enu:'EnuPositionDelta') -> numpy.ndarray
Convert position deltas from ENU to TRS
delta_trs2enu()
Full name: midgard.data._position_delta.delta_trs2enu
Signature: (trs:'TrsPositionDelta') -> numpy.ndarray
Convert position deltas from TRS to ENU
register_system()
Full name: midgard.data._position_delta.register_system
Signature: (convert_to:Dict[str, Callable]=None, convert_from:Dict[str, Callable]=None) -> Callable[[Callable], Callable]
Decorator used to register new position systems
The system name is read from the .system attribute of the Position class.
Args:
convert_to: Functions used to convert to other systems.convert_from: Functions used to convert from other systems.
Returns:
Decorator registering system.
midgard.data._time
Array with time epochs
TimeArray
Full name: midgard.data._time.TimeArray
Signature: (val, val2=None, format='', _jd1=None, _jd2=None)
TimeArray.create()
Full name: midgard.data._time.create
Signature: (val:numpy.ndarray, scale:str, format:str, val2:Union[numpy.ndarray, NoneType]=None) -> 'TimeArray'
Factory for creating TimeArrays for different scales
See each time class for exact optional parameters.
Args:
val: Array of time values.scale: Name of time scale.pos_args: Additional arguments used to create the TimeArray.
Returns:
Array with times in the given scale.
TimeArray.from_jds()
Full name: midgard.data._time.from_jds
Signature: (jd1:numpy.ndarray, jd2:numpy.ndarray, format:str) -> 'TimeArray'
Create a new time array with given Julian dates and format, keep scale
TimeArray.now()
Full name: midgard.data._time.now
Signature: (scale='utc', format='datetime') -> 'TimeArray'
Create a new time representing now
TimeArray.scale (NoneType)
scale = None
TimeArray.to_scale()
Full name: midgard.data._time.to_scale
Signature: (self, scale:str) -> 'TimeArray'
Convert time to a different scale
Returns a new TimeArray with the same time in the new scale.
Args:
scale: Name of new scale.
Returns:
TimeArray representing the same times in the new scale.
TimeArray.unit()
Full name: midgard.data._time.unit
Signature: (self, field:str='') -> Tuple[str, ...]
Unit of field
register_scale()
Full name: midgard.data._time.register_scale
Signature: (convert_to:Dict[str, Callable]=None, convert_from:Dict[str, Callable]=None) -> Callable[[Callable], Callable]
Decorator used to register new time scales
The scale name is read from the .scale attribute of the Time class.
Args:
convert_to: Functions used to convert to other scales.convert_from: Functions used to convert from other scales.
Returns:
Decorator registering scale.
midgard.data._time_formats
Array with time epochs
TimeDateTime
Full name: midgard.data._time_formats.TimeDateTime
Signature: (val, val2=None)
TimeDateTime.day2seconds (float)
day2seconds = 86400.0
TimeDateTime.format (str)
format = 'datetime'
TimeDateTime.from_jds()
Full name: midgard.data._time_formats.from_jds
Signature: (jd1, jd2)
TimeDateTime.to_jds()
Full name: midgard.data._time_formats.to_jds
Signature: (val, val2=None)
TimeDateTime.unit (NoneType)
unit = None
TimeDateTime.week2days (float)
week2days = 6.999999999999998
TimeFormat
Full name: midgard.data._time_formats.TimeFormat
Signature: (val, val2=None)
TimeFormat.day2seconds (float)
day2seconds = 86400.0
TimeFormat.format (NoneType)
format = None
TimeFormat.from_jds()
Full name: midgard.data._time_formats.from_jds
Signature: (jd1, jd2)
Convert Julian days to the right format
TimeFormat.to_jds()
Full name: midgard.data._time_formats.to_jds
Signature: (val, val2)
Convert val and val2 to Julian days and set the .jd1 and .jd2 attributes
TimeFormat.unit (NoneType)
unit = None
TimeFormat.week2days (float)
week2days = 6.999999999999998
TimeGPSWeekSec
Full name: midgard.data._time_formats.TimeGPSWeekSec
Signature: (val, val2=None)
GPS weeks and seconds.
TimeGPSWeekSec.day2seconds (float)
day2seconds = 86400.0
TimeGPSWeekSec.format (str)
format = 'gps_ws'
TimeGPSWeekSec.from_jds()
Full name: midgard.data._time_formats.from_jds
Signature: (jd1, jd2)
TimeGPSWeekSec.to_jds()
Full name: midgard.data._time_formats.to_jds
Signature: (wwww, sec)
TimeGPSWeekSec.unit (tuple)
unit = ('week', 'second')
TimeGPSWeekSec.week2days (float)
week2days = 6.999999999999998
TimeJD
Full name: midgard.data._time_formats.TimeJD
Signature: (val, val2=None)
TimeJD.day2seconds (float)
day2seconds = 86400.0
TimeJD.format (str)
format = 'jd'
TimeJD.from_jds()
Full name: midgard.data._time_formats.from_jds
Signature: (jd1, jd2)
TimeJD.to_jds()
Full name: midgard.data._time_formats.to_jds
Signature: (val, val2)
TimeJD.unit (tuple)
unit = ('day',)
TimeJD.week2days (float)
week2days = 6.999999999999998
TimeMJD
Full name: midgard.data._time_formats.TimeMJD
Signature: (val, val2=None)
Modified Julian Date time format.
This represents the number of days since midnight on November 17, 1858. For example, 51544.0 in MJD is midnight on January 1, 2000.
TimeMJD.day2seconds (float)
day2seconds = 86400.0
TimeMJD.format (str)
format = 'mjd'
TimeMJD.from_jds()
Full name: midgard.data._time_formats.from_jds
Signature: (jd1, jd2)
TimeMJD.to_jds()
Full name: midgard.data._time_formats.to_jds
Signature: (val, val2)
TimeMJD.unit (tuple)
unit = ('day',)
TimeMJD.week2days (float)
week2days = 6.999999999999998
TimeYear
Full name: midgard.data._time_formats.TimeYear
Signature: (val, val2=None)
Year.
TODO: conversion is not correct!!!
TimeYear.day2seconds (float)
day2seconds = 86400.0
TimeYear.format (str)
format = 'decimalyear'
TimeYear.from_jds()
Full name: midgard.data._time_formats.from_jds
Signature: (jds1, jds2)
TimeYear.to_jds()
Full name: midgard.data._time_formats.to_jds
Signature: (val, val2=None)
TimeYear.unit (tuple)
unit = ('common_year',)
TimeYear.week2days (float)
week2days = 6.999999999999998
register_format()
Full name: midgard.data._time_formats.register_format
Signature: (cls:Callable) -> Callable
Decorator used to register new time formats
The format name is read from the .format attribute of the TimeFormat class.
midgard.data._time_scales
Time scales and conversions between them
GpsTime
Full name: midgard.data._time_scales.GpsTime
Signature: (val, val2=None, format='', _jd1=None, _jd2=None)
GpsTime.scale (str)
scale = 'gps'
TaiTime
Full name: midgard.data._time_scales.TaiTime
Signature: (val, val2=None, format='', _jd1=None, _jd2=None)
TaiTime.scale (str)
scale = 'tai'
TtTime
Full name: midgard.data._time_scales.TtTime
Signature: (val, val2=None, format='', _jd1=None, _jd2=None)
TtTime.scale (str)
scale = 'tt'
UtcTime
Full name: midgard.data._time_scales.UtcTime
Signature: (val, val2=None, format='', _jd1=None, _jd2=None)
UtcTime.scale (str)
scale = 'utc'
midgard.data.dataset
A dataset for handling time series data
Description:
Dataset
Full name: midgard.data.dataset.Dataset
Signature: (num_obs:int=0) -> None
A dataset representing fields of data arrays
Dataset.add_collection()
Full name: midgard.data.dataset.add_collection
Signature: (self, name, val, unit=None, write_level=None, suffix=None, **field_args)
Add a collection field to the dataset
Dataset.add_float()
Full name: midgard.data.dataset.add_float
Signature: (self, name, val, unit=None, write_level=None, suffix=None, **field_args)
Add a float field to the dataset
Dataset.add_position()
Full name: midgard.data.dataset.add_position
Signature: (self, name, val, unit=None, write_level=None, suffix=None, **field_args)
Add a position field to the dataset
Dataset.add_position_delta()
Full name: midgard.data.dataset.add_position_delta
Signature: (self, name, val, unit=None, write_level=None, suffix=None, **field_args)
Add a position_delta field to the dataset
Dataset.add_sigma()
Full name: midgard.data.dataset.add_sigma
Signature: (self, name, val, unit=None, write_level=None, suffix=None, **field_args)
Add a sigma field to the dataset
Dataset.add_time()
Full name: midgard.data.dataset.add_time
Signature: (self, name, val, unit=None, write_level=None, suffix=None, **field_args)
Add a time field to the dataset
Dataset.apply()
Full name: midgard.data.dataset.apply
Signature: (self, func:Callable, field:str, **filters:Any) -> Any
Apply a function to a field
Dataset.as_dataframe()
Full name: midgard.data.dataset.as_dataframe
Signature: (self, fields=None, index=None) -> pandas.core.frame.DataFrame
Return a representation of the dataset as a Pandas DataFrame
Dataset.as_dict()
Full name: midgard.data.dataset.as_dict
Signature: (self, fields=None) -> Dict[str, Any]
Return a representation of the dataset as a dictionary
Dataset.copy_from()
Full name: midgard.data.dataset.copy_from
Signature: (self, other:'Dataset') -> None
Copy observations from another dataset
Args:
other_dset (Dataset): The other dataset. meta_key (str): Dictionary key for introduction of an additional level in dictionary.
Dataset.count()
Full name: midgard.data.dataset.count
Signature: (self, field:str, **filters:Any) -> int
Count the number of unique values in a field
Dataset.extend()
Full name: midgard.data.dataset.extend
Signature: (self, other_dataset:'Dataset') -> None
Add observations from another dataset to the end of this dataset
Dataset.filter()
Full name: midgard.data.dataset.filter
Signature: (self, idx=None, **filters) -> <built-in function array>
Filter observations
TODO: default_field_suffix
Dataset.for_each()
Full name: midgard.data.dataset.for_each
Signature: (self, key)
Do something for each suffix
Dataset.mean()
Full name: midgard.data.dataset.mean
Signature: (self, field:str, **filters:Any) -> float
Calculate mean of a field
Dataset.num()
Full name: midgard.data.dataset.num
Signature: (self, **filters:Any) -> int
Number of observations satisfying the filters
Dataset.plot_values()
Full name: midgard.data.dataset.plot_values
Signature: (self, field:str) -> <built-in function array>
Return values of a field in a form that can be plotted
Dataset.read()
Full name: midgard.data.dataset.read
Signature: (file_path:Union[str, pathlib.Path]) -> 'Dataset'
Read a dataset from file
Dataset.rms()
Full name: midgard.data.dataset.rms
Signature: (self, field:str, **filters:Any) -> float
Calculate Root Mean Square of a field
Dataset.subset()
Full name: midgard.data.dataset.subset
Signature: (self, idx:<built-in function array>) -> None
Remove observations from all fields based on index
Dataset.unique()
Full name: midgard.data.dataset.unique
Signature: (self, field, **filters) -> <built-in function array>
List unique values of a given field
TODO: default_field_suffix
Dataset.unit()
Full name: midgard.data.dataset.unit
Signature: (self, field)
Unit for values in a given field
Dataset.version (str)
version = 'Dataset v3.0, Midgard v0.2.0'
Dataset.write()
Full name: midgard.data.dataset.write
Signature: (self, file_path:Union[str, pathlib.Path], write_level:Union[midgard.collections.enums.WriteLevel, NoneType]=None) -> None
Write a dataset to file
Meta
Full name: midgard.data.dataset.Meta
Signature: (*args, **kwargs)
Meta.add()
Full name: midgard.data.dataset.add
Signature: (self, section, name, value)
Add information to the metaset
Meta.add_event()
Full name: midgard.data.dataset.add_event
Signature: (self, timestamp, event_type, description)
Add event to the metaset
Meta.copy_from()
Full name: midgard.data.dataset.copy_from
Signature: (self, other)
Meta.get_events()
Full name: midgard.data.dataset.get_events
Signature: (self, *event_types)
Get events from the metaset
Meta.read()
Full name: midgard.data.dataset.read
Signature: (self, h5_group)
Meta.write()
Full name: midgard.data.dataset.write
Signature: (self, h5_group)
field_type (str)
field_type = 'time'
midgard.data.fieldtypes
Field types that can be used by Dataset
function()
Full name: midgard.data.fieldtypes.function
Signature: (plugin_name:str) -> Callable
Function creating new field
names()
Full name: midgard.data.fieldtypes.names
Signature: () -> List[str]
Names of fieldtype plugins
midgard.data.fieldtypes._fieldtype
Abstract class used to define different types of tables for a Dataset
FieldType
Full name: midgard.data.fieldtypes._fieldtype.FieldType
Signature: (num_obs, master, name, val, unit=None, write_level=None, **field_args)
Abstract class representing a type of field in the Dataset
FieldType.as_dataframe()
Full name: midgard.data.fieldtypes._fieldtype.as_dataframe
Signature: (self, fields=None, index=None) -> pandas.core.frame.DataFrame
Return a representation of the field as a Pandas DataFrame
FieldType.as_dict()
Full name: midgard.data.fieldtypes._fieldtype.as_dict
Signature: (self, fields=None) -> Dict[str, Any]
Return a representation of the field as a dictionary
FieldType.copy()
Full name: midgard.data.fieldtypes._fieldtype.copy
Signature: (self) -> 'FieldType'
Make a copy of field
FieldType.copy_from()
Full name: midgard.data.fieldtypes._fieldtype.copy_from
Signature: (self, other_field) -> None
Copy data from another field
FieldType.extend()
Full name: midgard.data.fieldtypes._fieldtype.extend
Signature: (self, other_field) -> None
Add observations from another field
FieldType.read()
Full name: midgard.data.fieldtypes._fieldtype.read
Signature: (h5_group, master) -> 'FieldType'
Read a field from a HDF5 data source
FieldType.subset()
Full name: midgard.data.fieldtypes._fieldtype.subset
Signature: (self, idx:<built-in function array>) -> None
Remove observations from a field based on index
FieldType.unit()
Full name: midgard.data.fieldtypes._fieldtype.unit
Signature: (self, subfield)
Unit(s) of field
FieldType.write()
Full name: midgard.data.fieldtypes._fieldtype.write
Signature: (self, h5_group, write_level:midgard.collections.enums.WriteLevel) -> None
Write data to a HDF5 data source
midgard.data.fieldtypes.collection
A Dataset collection field consisting of other fields
Collection
Full name: midgard.data.fieldtypes.collection.Collection
Signature: ()
Collection.unit()
Full name: midgard.data.fieldtypes.collection.unit
Signature: (self, field)
Unit for values in a given field
CollectionField
Full name: midgard.data.fieldtypes.collection.CollectionField
Signature: (num_obs, master, name, val, unit=None, write_level=None, **field_args)
CollectionField.read()
Full name: midgard.data.fieldtypes.collection.read
Signature: (h5_group, master)
CollectionField.write()
Full name: midgard.data.fieldtypes.collection.write
Signature: (self, h5_group, write_level)
Write data to a HDF5 data source
midgard.data.fieldtypes.float
A Dataset float field
FloatField
Full name: midgard.data.fieldtypes.float.FloatField
Signature: (num_obs, master, name, val, unit=None, write_level=None, **field_args)
midgard.data.fieldtypes.position
A Dataset position field
PositionField
Full name: midgard.data.fieldtypes.position.PositionField
Signature: (num_obs, master, name, val, unit=None, write_level=None, **field_args)
midgard.data.fieldtypes.position_delta
A Dataset position delta field
PositionDeltaField
Full name: midgard.data.fieldtypes.position_delta.PositionDeltaField
Signature: (num_obs, master, name, val, unit=None, write_level=None, **field_args)
midgard.data.fieldtypes.sigma
A Dataset sigma field
SigmaField
Full name: midgard.data.fieldtypes.sigma.SigmaField
Signature: (num_obs, master, name, val, unit=None, write_level=None, **field_args)
midgard.data.fieldtypes.time
A Dataset time field
TimeField
Full name: midgard.data.fieldtypes.time.TimeField
Signature: (num_obs, master, name, val, unit=None, write_level=None, **field_args)
midgard.data.position
Array with positions
Position()
Full name: midgard.data.position.Position
Signature: (val:numpy.ndarray, system:str, **pos_args:Any) -> 'PositionArray'
Factory for creating PositionArrays for different systems
See each position class for exact optional parameters.
Args:
val: Array of position values.system: Name of position system.pos_args: Additional arguments used to create the PositionArray.
Returns:
Array with positions in the given system.
PositionDelta()
Full name: midgard.data.position.PositionDelta
Signature: (val:numpy.ndarray, system:str, ref_pos:midgard.data._position.PositionArray, **delta_args:Any) -> midgard.data._position_delta.PositionDeltaArray
Factory for creating PositionArrays for different systems
See each position class for exact optional parameters.
Args:
val: Array of position values.system: Name of position system.ref_pos: Reference position.delta_args: Additional arguments used to create the PositionArray.
Returns:
Array with positions in the given system.
midgard.data.sigma
Array with sigma values
See https://docs.scipy.org/doc/numpy/user/basics.subclassing.html for information about subclassing Numpy arrays.
SigmaArray is a regular Numpy array with an added field, sigma.
SigmaArray
Full name: midgard.data.sigma.SigmaArray
Signature: (values, sigma=None)
midgard.data.time
Array with time epochs
Time()
Full name: midgard.data.time.Time
Signature: (val:numpy.ndarray, scale:str, format:str, val2:Union[numpy.ndarray, NoneType]=None) -> 'TimeArray'
Factory for creating TimeArrays for different systems
See each time class for exact optional parameters.
Args:
val: Array of time values.val2: Optional second array for extra precision.scale: Name of time scale.format: Format of values given in val and val2.
Returns:
Array with epochs in the given time scale and format