TimeDelta

class astropy.time.TimeDelta(val, val2=None, format=None, scale=None, precision=None, in_subfmt=None, out_subfmt=None, location=None, copy=False)[源代码]

基类:TimeBase

表示两次之间的时差。

TimeDelta对象在 val 争论。输入时间 val 必须符合规定 format . 可选的 val2 时间输入只能用于要求非常高精度(优于64位精度)的数字输入格式(例如JD)。

的允许值 format 可列出:

>>> list(TimeDelta.FORMATS)
['sec', 'jd', 'datetime']

请注意,对于时间差,比例尺可以分为三组:地心(‘tai’,‘tt’,‘tcg’)、重心(‘tcb’,‘tdb’)和旋转(‘ut1’)。在每一种情况下,时间差的尺度是相同的。地心和重心之间的转换是可能的,因为只有一个比例因子的变化,但不能转换为或从“ut1”转换,因为这需要了解实际时间,而不仅仅是它们的差异。出于类似的原因,“utc”不是时间差的有效刻度:utc日并不总是86400秒。

参见:

参数
val :序列号,序列号,编号, QuantityTimeDelta 对象序列,序列号,编号,

初始化时差的值。任何数量将被适当地转换(注意避免常规时间单位的舍入误差)。

val2 :sequence、ndarray、number或 Quantity ;可选序列、序列号、编号或

为保持精度所需的附加值。

format可选的STR

输入值的格式。对于不带单位的数字输入,假定为“JD”,并将值解释为天。在这种情况下,将引发弃用警告。若要避免该警告,请指定格式或向输入值添加单位。

scale可选的STR

输入值的时间刻度,必须是以下值之一:(“tdb”、“tt”、“ut1”、“tcg”、“tcb”、“tai”)。如果未给出(或 None ),刻度是任意的;当从 Time 实例,则不进行转换就可以使用它。

copy可选的布尔

复制输入值

属性摘要

FORMATS 

时间增量格式的Dict。

SCALES 

时间增量刻度列表。

T 

返回一个实例,并将数据转置。

cache 

返回与此实例关联的缓存。

format 

获取或设置时间格式。

in_subfmt 

Unix通配符模式,用于选择用于分析字符串输入时间的子格式。

info 

用于存储诸如名称、描述、格式等元信息的容器。

isscalar 

jd1 

在JD中内部存储时间值的两个双精度值中的第一个。

jd2 

JD商店的第二(2)倍的时间价值。

mask 

masked 

ndim 

实例和基础数组的维度数。

out_subfmt 

Unix通配符模式,用于选择用于输出时间的子格式。

precision 

以浮点形式输出秒时的十进制精度(0到9之间的整数值)。

scale 

时间尺度

shape 

时间实例的形状。

size 

根据形状计算的对象大小。

value 

当前格式的时间值

writeable 

方法总结

argmax([axis, out])

返回给定轴上最大值的索引。

argmin([axis, out])

返回沿给定轴的最小值的索引。

argsort([axis])

返回将对时间数组进行排序的索引。

copy([format])

返回时间对象的完全独立副本,可以选择更改格式。

diagonal(*args, **kwargs)

返回具有指定对角线的实例。

flatten(*args, **kwargs)

返回数组折叠为一维的副本。

insert(obj, values[, axis])

在列中的给定索引之前插入值,并返回一个新的 TimeTimeDelta 对象。

isclose(other[, atol, rtol])

返回一个布尔数组或布尔数组,其中两个TimeDelta对象在时间容差内元素上相等。

max([axis, out, keepdims])

沿给定轴的最大值。

min([axis, out, keepdims])

沿给定轴的最小值。

ptp([axis, out, keepdims])

沿给定轴的峰对峰(最大值-最小值)。

ravel(*args, **kwargs)

返回数组折叠为一维的实例。

replicate(*args, **kwargs)

返回时间对象的副本,可以选择更改格式。

reshape(*args, **kwargs)

返回包含具有新形状的相同数据的实例。

sort([axis])

返回沿指定轴排序的副本。

squeeze(*args, **kwargs)

返回删除了一维形状项的实例

swapaxes(*args, **kwargs)

返回交换给定轴的实例。

take(indices[, axis, out, mode])

返回由给定索引处的元素构成的新实例。

to(unit[, equivalencies])

转换为指定单位的数量。

to_datetime \()

转换为 datetime.timedelta 对象。

to_value(*args, **kwargs)

获取以指定的输出格式或单位表示的时间增量值。

transpose(*args, **kwargs)

返回一个实例,并将数据转置。

属性文档

FORMATS = {'datetime': <class 'astropy.time.formats.TimeDeltaDatetime'>, 'jd': <class 'astropy.time.formats.TimeDeltaJD'>, 'sec': <class 'astropy.time.formats.TimeDeltaSec'>}

时间增量格式的Dict。

SCALES = ('tai', 'tt', 'tcg', 'tcb', 'tdb', 'ut1', 'local')

时间增量刻度列表。

T

返回一个实例,并将数据转置。

参数与 T . 所有内部数据都是原始数据的视图。

cache

返回与此实例关联的缓存。

format

获取或设置时间格式。

该格式定义了通过访问时表示时间的方式 .value 属性。默认情况下,它与初始化 Time 实例,但可以将其设置为可用于初始化的任何其他值。这些可以用以下方式列出:

>>> list(Time.FORMATS)
['jd', 'mjd', 'decimalyear', 'unix', 'unix_tai', 'cxcsec', 'gps', 'plot_date',
 'stardate', 'datetime', 'ymdhms', 'iso', 'isot', 'yday', 'datetime64',
 'fits', 'byear', 'jyear', 'byear_str', 'jyear_str']
in_subfmt

Unix通配符模式,用于选择用于分析字符串输入时间的子格式。

info

用于存储诸如名称、描述、格式等元信息的容器。当对象用作表中的mixin列时,这是必需的,但也可以作为存储元信息的通用方法。

isscalar
jd1

在JD中内部存储时间值的两个双精度值中的第一个。

jd2

JD商店的第二(2)倍的时间价值。

mask
masked
ndim

实例和基础数组的维度数。

out_subfmt

Unix通配符模式,用于选择用于输出时间的子格式。

precision

以浮点形式输出秒时的十进制精度(0到9之间的整数值)。

scale

时间尺度

shape

时间实例的形状。

喜欢 shape ,可以通过指定元组设置为新形状。请注意,如果不同的实例共享一些但不是所有的底层数据,那么设置一个实例的形状可能会使另一个实例不可用。因此,强烈建议对新实例进行重新构造 reshape 方法。

加薪
ValueError

如果新形状的元素总数错误。

AttributeError

如果 jd1jd2locationdelta_ut1_utcdelta_tdb_tt 如果不复制数组,则无法更改属性。对于这些情况,请使用 Time.reshape 方法(该方法复制任何不能就地重塑的数组)。

size

根据形状计算的对象大小。

value

当前格式的时间值

writeable

方法文件

argmax(axis=None, out=None)

返回给定轴上最大值的索引。

这和 argmax() ,但为了确保两个数字的完全精度翻倍 jd1jd2 被使用。看到了吗 argmax() 有关详细文档。

argmin(axis=None, out=None)

返回沿给定轴的最小值的索引。

这和 argmin() ,但为了确保两个数字的完全精度翻倍 jd1jd2 被使用。看到了吗 argmin() 有关详细文档。

argsort(axis=-1)

返回将对时间数组进行排序的索引。

这和 argsort() ,但为了确保两个数字的完全精度翻倍 jd1jd2 ,并复制相应的属性。在内部,它使用 lexsort() ,因此无法选择排序方法。

copy(format=None)

返回时间对象的完全独立副本,可以选择更改格式。

如果 format 则返回的时间对象的时间格式将相应设置,否则将与原始时间对象保持不变。

在此方法中,将生成内部时间数组的完整副本。内部时间数组通常不会被用户更改,因此在大多数情况下 replicate() 应使用方法。

参数
format可选的STR

副本的时间格式。

返回
tm时间对象

此对象的副本

diagonal(*args, **kwargs)

返回具有指定对角线的实例。

参数与 diagonal() . 所有内部数据都是原始数据的视图。

flatten(*args, **kwargs)

返回数组折叠为一维的副本。

参数与 flatten() .

insert(obj, values, axis=0)

在列中的给定索引之前插入值,并返回一个新的 TimeTimeDelta 对象。

要插入的值必须符合的就地设置规则 Time 对象(请参见 Get and set valuesTime 文件)。

API签名与 np.insert API,但更为有限。插入索引规范 obj 必须是单个整数,并且 axis 必须是 0 用于索引前的简单行插入。

参数
obj利息

前一个整数索引 values 插入。

values类似阵列的

要插入的值。如果 values 与数量不同, values 转换为匹配类型。

axis可选的

插入轴 values . 默认值为0,这是唯一允许的值,将插入一行。

返回
outTime 子类时间子类

具有插入值的新时间对象

isclose(other, atol=None, rtol=0.0)[源代码]

返回一个布尔数组或布尔数组,其中两个TimeDelta对象在时间容差内元素上相等。

这将有效地计算以下表达式:

abs(self - other) <= atol + rtol * abs(other)
参数
其他QuantityTimeDelta数量或时间增量

用于比较的Quantity或TimeDelta对象。

atolQuantityTimeDelta数量或时间增量

绝对时间单位公差。 u.su.day ). 默认值是128位JD时间表示中的一位,相当于大约20个picosec。

rtol浮动

平等的相对容忍度

max(axis=None, out=None, keepdims=False)

沿给定轴的最大值。

这和 max() ,但为了确保两个数字的完全精度翻倍 jd1jd2 ,并复制相应的属性。

请注意 out 参数仅用于与兼容 np.max ;因为 Time 实例是不可变的,不可能有一个 out 将结果存储在中。

min(axis=None, out=None, keepdims=False)

沿给定轴的最小值。

这和 min() ,但为了确保两个数字的完全精度翻倍 jd1jd2 ,并复制相应的属性。

请注意 out 参数仅用于与兼容 np.min ;因为 Time 实例是不可变的,不可能有一个 out 将结果存储在中。

ptp(axis=None, out=None, keepdims=False)

沿给定轴的峰对峰(最大值-最小值)。

这和 ptp() ,但为了确保两个数字的完全精度翻倍 jd1jd2 使用。

请注意 out 参数仅用于与兼容 ptp ;因为 Time 实例是不可变的,不可能有一个 out 将结果存储在中。

ravel(*args, **kwargs)

返回数组折叠为一维的实例。

参数与 ravel() . 请注意,在不复制数据的情况下,不可能总是分解数组。如果要在复制数据时引发错误,则应指定形状 (-1,) 到形状属性。

replicate(*args, **kwargs)[源代码]

返回时间对象的副本,可以选择更改格式。

如果 format 则返回的时间对象的时间格式将相应设置,否则将与原始时间对象保持不变。

如果 copy 设置为 True 然后将生成内部时间数组的完整副本。默认情况下,为了节省内存,复制副本将使用对原始阵列的引用。内部时间数组通常不可由用户更改,因此在大多数情况下不需要设置 copyTrue .

方便方法copy()可用,其中 copyTrue 默认情况下。

参数
format可选的STR

复制副本的时间格式。

copy可选的布尔

返回真实副本,而不是尽可能使用引用。

返回
tm时间对象

此对象的副本

reshape(*args, **kwargs)

返回包含具有新形状的相同数据的实例。

参数与 reshape() 。请注意,并非总是可以在不复制数据的情况下更改数组的形状(请参见 reshape() 文档)。如果希望在复制数据时引发错误,则应将新形状分配给Shape属性(注意:这可能不适用于所有使用 NDArrayShapeMethods )。

sort(axis=-1)

返回沿指定轴排序的副本。

这和 sort() ,但内部使用索引 lexsort() 以确保两个数字的完全精度加倍 jd1jd2 保留,并且相应的属性也被正确地排序和复制。

参数
axisint或无

要排序的轴。如果 None ,对展平数组进行排序。默认情况下,按最后一个轴排序。

squeeze(*args, **kwargs)

返回删除了一维形状项的实例

参数与 squeeze() . 所有内部数据都是原始数据的视图。

swapaxes(*args, **kwargs)

返回交换给定轴的实例。

参数与 swapaxes()axis1, axis2 . 所有内部数据都是原始数据的视图。

take(indices, axis=None, out=None, mode='raise')

返回由给定索引处的元素构成的新实例。

参数与 take() ,但显然,不能给出输出数组。

to(unit, equivalencies=[])[源代码]

转换为指定单位的数量。

参数
unit类单元

要转换为的单位。

equivalencies元组列表

单位不可直接转换时要尝试的等价对列表(请参见 astropy:unit_equivalencies )。如果 None ,则根本不会应用等价物,甚至不会在全球范围内或在上下文中应用任何集合。

返回
Quantity数量

以指定单位表示的数量。

参见

to_value

取给定单位的数值。

to_datetime()[源代码]

转换为 datetime.timedelta 对象。

to_value(*args, **kwargs)[源代码]

获取以指定的输出格式或单位表示的时间增量值。

此方法非常灵活,可以处理到指定的 TimeDelta 格式化/子格式并转换为指定单位。如果提供了位置参数,则会检查第一个参数是否有效 TimeDelta 格式,然后检查它是否是有效的单位或单位字符串。

转换为 TimeDelta 格式和可选子格式选项有:

tm = TimeDelta(1.0 * u.s)
tm.to_value('jd')  # equivalent of tm.jd
tm.to_value('jd', 'decimal')  # convert to 'jd' as a Decimal object
tm.to_value('jd', subfmt='decimal')
tm.to_value(format='jd', subfmt='decimal')

要转换为具有可选等效性的单位,选项包括:

tm.to_value('hr')  # convert to u.hr (hours)
tm.to_value('hr', [])  # specify equivalencies as a positional arg
tm.to_value('hr', equivalencies=[])
tm.to_value(unit='hr', equivalencies=[])

内置的 TimeDelta 选项: format 是:{‘jd’,‘sec’,‘datetime’}。

对于两种数字格式‘jd’和‘sec’,可用的 subfmt 选项有:{‘浮点’,‘长’,‘小数’,‘字符串’,‘字节’}。在这里,‘long’用 numpy.longdouble 为了在一定程度上提高精度(增强程度取决于平台),以及的“十进制”实例 decimal.Decimal 为了达到完全的精确度。对于‘str’和‘bytes’子格式,也选择数字的数量,以便准确地表示时间值。默认值:由设置者设置 out_subfmt (默认情况下,它为给定格式选择第一个可用的格式,即‘Float’)。

参数
format可选的STR

一个人想要的格式 TimeDelta 价值观。默认:当前格式。

subfmt可选的STR

应给出值的可能子格式。默认值:按设置 out_subfmt (默认情况下,它选择第一个可用的给定格式,即“float”或“date_hms”)。

unitUnitBase 实例或str,可选UnitBase实例或str,可选

给出数值的单位。

equivalencies元组列表

单位不可直接转换时要尝试的等价对列表(请参见 astropy:unit_equivalencies )。如果 None ,则根本不会应用等价物,甚至不会全局或在上下文中应用任何集合。

返回
valuendarray或scalar

以指定格式或单位表示的值。

参见

to

转换为 Quantity 给定单元中的实例。

value

当前格式的时间值。

transpose(*args, **kwargs)

返回一个实例,并将数据转置。

参数与 transpose() . 所有内部数据都是原始数据的视图。