注意:以下翻译的准确性尚未经过验证。这是使用 AIP ↗ 从原始英文文本进行的机器翻译。

时间序列属性

时间序列属性需要安装时间序列服务,因此,可能在您的 Foundry 实例上不可用。如有任何疑问,请联系您的 Palantir 代表。

时间序列属性是一种特定类型的对象属性。虽然传统的对象属性包含单个值(例如,字符串 Argentina 或数字 81231),但时间序列属性存储的是带有时间戳的值的历史记录。了解更多关于创建时间序列属性的信息。

在 Workshop 中,时间序列属性,包括由时间序列变换生成的时间序列,可以在XY 图表地图、指标卡片和对象表微件中使用,可以通过创建时间序列集变量或直接访问感兴趣对象的属性来实现。有关使用时间序列属性的更多信息,请参阅每个功能对应的文档:

时间序列变换

时间序列变换对输入时间序列数据执行数学操作,以生成新的输出时间序列。这些输入时间序列可以是时间序列属性或其他变换的输出,这允许多个变换链接在一起。

在下面的例子中,Country 对象有一个字符串属性 Name,用于存储国家的名称,以及一个时间序列属性 covid19 New Cases,用于存储该国家每日观测到的新冠肺炎病例历史记录。该对象显示在 Workshop 对象表微件中,并对 covid19 New Cases 时间序列属性应用不同的时间序列变换来生成新的时间序列。对象表微件配置为为每个时间序列显示两个可视化:左侧是时间序列的最新值,右侧是显示时间序列历史的微型图。

聚合

聚合变换执行窗口聚合。输出时间序列上的每个点都是对输入时间序列中一组点的聚合。聚合方法是用户指定的——有关可用的不同聚合类型的更多信息,请参见下面的时间序列汇总器部分。

有三种类型的聚合变换。

  • 累积: 每个输出点是通过取输入时间序列上的一个点并聚合所有较早的点(包括输入点本身)生成的。例如,下面的配置创建一个时间序列,其中每个点代表到目前为止观测到的输入值的总和。高级设置允许用户在执行操作时跳过输入序列中的非有限值。

aggregate_cumulative

  • 周期性: 输出点在等间距的、非重叠的时间间隔中生成,每个输出点是对其对应间隔内的输入点的聚合。这些间隔与用户指定的对齐时间戳对齐,其长度由用户指定的窗口大小定义。例如,下面的配置创建了一个平均输入值的时间序列,在生成的两周窗口序列中——对齐窗口——以对齐时间戳开始。 除了跳过输入序列中的非有限值,高级设置还允许用户配置以下选项:
    • 窗口类型:Start 表示每个输出点代表一个时间间隔的开始,并且是对其后的输入点的聚合,而 End 表示每个输出点代表一个时间间隔的结束,并且是对其前面的输入点的聚合。
    • 对齐时间戳:周期性间隔将通过从该时间戳开始并按窗口大小的倍数偏移来生成。

aggregate_periodic

  • 滚动: 每个输出点是通过取输入时间序列上的一个点并聚合落在其之前的固定大小时间窗口内的点(包括输入点本身)生成的。例如,下面的配置创建了一个时间序列,其中每个点是其前三天窗口内观测到的输入值的标准差。高级设置允许用户在执行操作时跳过输入序列中的非有限值。

aggregate_rolling

导数

导数变换生成一个表示输入时间序列变化率的时间序列。它还可以对变化率进行单位转换,以便用用户指定的时间单位进行解释。例如,给定一个累积公里数随时间变化的时间序列,变换可以执行必要的缩放,以根据某个点的变化率——速度——以“公里/小时”(一种常见的速度度量单位)、“公里/秒”或任何类似的时间分母进行解释。

在下面的例子中,导数变换被配置为产生 COVID-19 病例计数的每周变化率。这些病例观察记录是每日记录的,因此输入时间序列中每天有一个数据点,变化率通常会被解释为具有单位“病例/天”。然而,由于变换的时间单位设置为 weeks,变换将每日变化率乘以七(因为一周有七天),因此用户可以用单位“病例/周”解释时间序列。

derivative

公式

公式变换在一组输入时间序列上计算领域特定语言(DSL)公式。用户可以使用“添加输入”按钮为变换添加新的输入时间序列——无论是时间序列属性还是其他变换的输出——然后使用变量引用这些输入构建公式。下面的例子将输入时间序列按两倍缩放,并在结果上加上五。

formula

积分

积分变换生成一个表示输入时间序列在可视化为图表时的累积面积的时间序列。它还可以对面积进行单位转换,以便用用户指定的时间单位进行解释。例如,给定一个家庭的千瓦功率消耗的时间序列,变换可以执行必要的缩放,以根据某个点的总面积——总能量消耗——以“千瓦时”(测量电力消耗的标准度量单位)、“千瓦分钟”或任何类似的时间分子进行解释。用户还可以指定积分方法,即用于插值时间序列点之间使用值的方法。这里的选项有 linear,使用两个时间点之间的平均值;left hand sum,使用较早时间点的值;以及 right hand sum,使用较晚时间点的值。

integral

时间范围

时间范围变换将输入时间序列筛选到用户指定的时间范围。有关指定时间范围的更多信息,请参见下面的时间范围部分。

time_range

时间偏移

时间偏移变换生成一个与输入时间序列相同但在时间上由用户指定的持续时间以用户指定的方向偏移的输出时间序列。

time_shift

时间序列汇总器

时间序列汇总器配置时间序列数据的汇总统计量;即反映时间序列状态的值。汇总器用于所有支持时间序列属性的 Workshop 微件中。例如,对象表和指标卡片微件使用它们来配置一个与时间序列一起显示的单值,如下面的例子中所示。有关各自应用案例的更多信息,请参见对象表指标卡片

时间序列汇总器有两种类型。

  • 单一值: 单一值汇总器计算并显示时间序列输入的一个聚合。例如,这个单一值汇总器设置为显示上周的平均 COVID-19 病例数。

single_value_summarizer

  • 值变化: 值变化汇总器在输入数据上计算两个汇总器,然后计算两者之间的差异。这在捕捉变化趋势时特别有用。例如,这个值变化汇总器计算了过去两周观察到的每周 COVID-19 病例总数的变化。

value_change_summarizer

汇总器由一个聚合类型定义,指定在输入数据点上执行的计算,以及一个时间范围,指定执行聚合的时间范围。有关指定时间范围的更多信息,请参见下面的时间范围部分。

不同的聚合类型如下。

  • 平均值: 计算输入数据点的平均值。
  • 计数: 获取时间范围内输入数据点的数量。
  • 差异: 计算时间范围内最后一个点和第一个点的值之间的差异。
  • 第一个: 获取时间窗口内第一个数据点的值。
  • 最后一个: 获取时间窗口内最后一个数据点的值。
  • 最小值: 获取时间窗口内数据点的最小值。
  • 最大值: 获取时间窗口内数据点的最大值。
  • 积: 计算时间范围内所有输入值的积。
  • 相对差异: 计算时间范围内最后一个点和第一个点的值之间的差异,并将此差异除以第一个点的值。如果乘以100(例如,使用公式变换),这将产生时间范围内时间序列值的百分比变化。
  • 标准差: 计算时间范围内输入值的标准差。
  • 总和: 计算输入数据点的总和。

时间范围

时间范围指定一个有限的时间间隔,由其起始和结束时间定义。我们也称之为时间窗口。时间范围用于时间序列变换,通过时间范围变换筛选时间序列数据;用于时间序列汇总器,指定执行聚合的时间窗口;以及在对象表和指标卡片微件中,用于配置微型图和基线。有关各自应用案例的更多信息,请参见时间序列变换时间序列汇总器对象表指标卡片

指定时间范围的界面在这些应用中是一致的。用户可以从下拉菜单中的默认选项中选择,或选择指定自定义范围。

time_range_options

自定义范围有两种类型:精确和相对。

精确选项使用日期和时间选择器,允许用户为范围的开始和结束指定绝对时间戳。这里指定的窗口是绝对的,因此不会改变。

exact_time_range

相对选项指定窗口的开始和结束相对于当前时间。请注意,当前时间是在首次需要时计算的(例如,当用户显示使用相对时间范围的微件时)。然后保持不变,除非网页重新加载——这是为了确保微件之间的一致性。因此,这里指定的时间窗口不是绝对窗口——它随着时间的推移而滑动。

例如,“两周前”的相对开始指定了一个窗口,当应用程序在12月15日打开时,开始于12月1日,但当应用程序在12月16日打开时,开始于12月2日。同样,“一周后”的相对结束指定了一个窗口,当应用程序在12月15日打开时,结束于12月22日,但当应用程序在12月16日打开时,结束于12月23日。窗口大小可以用毫秒、秒、分钟、小时、天和周指定。

relative_time_range

基线

基线是一条额外的时间序列线,以一种视觉上区别的方式(例如,虚线)与微型图一起呈现。通过为时间序列提供视觉基础和背景,基线可以帮助用户解释趋势。基线可以在对象表和指标卡片微件中配置。

基线有三种类型:StaticNumeric propertyTime series property

Static 类型意味着每个时间序列的基线值是一个静态用户指定的值。用户可以将此值输入到文本框中。在这个例子中,Weekly Cases 列的基线具有静态值 1000

baseline_static

Numeric property 类型意味着用户可以指定微件提供的对象类型的一个数值属性,其每个对象的值用作相应系列的基线。有关对象属性的更多信息,请参见属性。在这个例子中,Hospital Admissions 列中的每一行都有一个基线,其值为相应 Country 对象的 Hospital Capacity 属性的值。

baseline_numeric_property

Time series 类型意味着用户可以配置一个时间序列汇总器,以为每个系列生成一个唯一的基线值。有关汇总器的更多信息,请参见Workshop 中的时间序列属性。在这个例子中,Weekly Cases 列中的每个时间序列都有一个基线,其值为时间序列中最近一次观察的值。

baseline_time_dependent.png