TimeSeries

TimeSeries[{{t1,v1},{t2,v2}}]

表示由时间数值对 {ti,vi} 指定的时间序列.

TimeSeries[{v1,v2,},tspec]

表示在由 tspec 指定的时间处具有数值 vi 的时间序列.

更多信息和选项

  • TimeSeries 表示由时间数值对 {ti,vi} 组成的序列.
  • 数值 vi 可以是标量或者任意维度的数组,但是必须全部具有相等的维度.
  • 可以给出下列时间 tspec
  • Automatic使用从 0 开始的均匀间隔的时间
    {tmin}使用从 tmin 开始的均匀间隔的时间
    {tmin,tmax}使用从 tmintmax 的均匀间隔的时间
    {tmin,tmax,dt}使用时间 tmintmax,步长为 dt
    {{t1,t2,}}使用显式时间 {t1,t2,}
  • ti 可以是数字或者 AbsoluteTime 的任意有效输入.
  • 数值 tmintmaxdt 可以以数字、日期或者 Automatic 的形式给出.
  • 指定 ts[t] 就是给出了时间 t 处的时间序列数值.
  • TimeSeriesTemporalData 的一种特殊情形,仅允许单个路径并始终在时间戳之间进行插值.
  • 具有相等维度 {ts1,ts2,}TimeSeries 对象可以使用 TemporalData[{ts1,ts2,}] 合并为 TemporalData 对象.
  • TimeSeries 对象 ts 的属性可以从 ts["property"] 得到.
  • 可用属性列表可以用 ts["Properties"] 取得.
  • 时间序列的某些属性包括:
  • "Path"时间-数值对 {{t1,v1},}
    "PathComponents"将多变量路径分成单变量分量
    "PathFunction"插值路径函数
    "PathLength"路径长度
    "Values"数值 {v1,}
    "ValueDimensions"vi 的维度
    "Times"时间 {t1,}
    "Dates"以日期表现的时间 {t1,}
    "DatePath"日期-数值对 {{date1,v1},}
    "FirstTime"初始时间 t1
    "FirstDate"以日期表现的初始时间 t1
    "LastTime"终止时间
    "LastDate"以日期表现的终止时间
    "FirstValue"初始时间的数值 v1
    "LastValue"终止时间的数值
  • 指定 ts["PathComponent",p] 会给出由 p 指定的值的向量分量的 TimeSeries.
  • 如果日期以输入给出,ts["Times"]AbsoluteTime 中返回它们.
  • Normal[ts] 等价于 ts["Path"].
  • TimeSeries 具有下列选项:
  • CalendarType "Gregorian"使用的日历类型
    HolidayCalendar {"UnitedStates","Default"}使用的假期日历
    TimeZone $TimeZone使用的时区
    MetaInformation None包含额外的元信息
    MissingDataMethod None用于缺失数值的方法
    ResamplingMethod "Interpolation"用于重采样路径的方法
    TemporalRegularity Automatic是否假定数据是规则的
    DateFunction Automatic如何将数据转化为标准形式
    ValueDimensions Automatic值的维数
  • 默认情况下,一阶插值用于重采样. 可以给出设置 ResamplingMethod->{"Interpolation",opts},其中 opts 是传递给 Interpolation 的选项.
  • 设置 MissingDataMethod->Automatic 将自动根据 ResamplingMethod 设置对头部为 Missing 的数值进行插值. 默认情况下,具有头部 Missing 的数值视为缺失值.
  • 设置 ValueDimensions->dim 指定值 vij 是维数 dim. 设置 ValueDimensions->Automatic 尝试自动根据数据确定值得维数.

范例

打开所有单元关闭所有单元

基本范例  (2)

从某些数值和时间创建时间序列:

可视化路径:

使用作为时间戳的日期:

使用 DateListPlot 绘制时间序列的图线:

2009年5月24日的股票价格:

整个日期范围内的股票平均价格:

范围  (33)

基本用法  (10)

可视化时间序列:

使用 TimeSeriesWindow 提取时间序列的一部分:

使用 TimeSeriesInsert 替换缺失值:

使用 TimeSeriesRescale 缩放从 020 的时间序列:

使用 TimeSeriesShift 把时间序列往前移 2

把时间序列中的数值求平方:

使用 TimeSeriesMap 求向量值时间序列的分量之和:

求时间序列的 Mean

均值只取决于数值:

计算加权均值:

计算时间序列的 MovingAverage

使用 MovingMap 计算移动最大值:

使用 TimeSeriesAggregate 计算时间序列的周总计值:

使用 TimeSeriesModelFit 来拟合时间序列的参数模型:

使用 TimeSeriesForecast 预测时间序列中未来10个数值:

绘制具有预测值的时间序列:

使用 TimeSeriesThread 计算两个时间序列之间的差值:

创建时间序列  (14)

给出具有 Automatic 时间戳的数值列表:

创建开始于 的时间序列:

对起始时间使用日期:

日期可以以 AbsoluteTime 的任意有效输入给出:

使用从 10 到 50 的均匀间隔的时间:

给出使用的日期范围:

指定 Automatic 端点:

创建时间从 120,步长为 2 的时间序列:

使用 Automatic 端点和固定步长:

提取已计算的上次日期:

使用一个 Automatic 起点并给定频率:

提取已计算的首次时间:

明确指定使用的时间:

给出显式的日期列表:

给出时间数值对:

从日期数值对创建时间序列:

从涉及数量的数据创建时间序列:

提取属性和数值  (5)

获取可用属性的列表:

用于时间序列的数值:

时间:

时间数值对:

绘制时间序列图线:

用函数表示时间序列:

路径函数:

提取一组向量值数据的分量:

第一个分量:

获取第二个分量:

绘制路径分量:

在给定的时间集上对数据重新采样:

以步长 0.25 对原来的路径进一步采样:

新数据从路径函数采样:

包括量的时间序列:

值被给定为 QuantityArray

提取量单位信息:

提取量幅度:

时间序列算术  (4)

数值的可列函数自动作用于时间序列上的数值:

TimeSeriesMap 的结果相比较:

用通过数值的同一时间戳结合几个时间序列:

这些时间序列在其支集的交集中的时间戳的并集重取样:

支集的交集是,含有时间戳的并集是

加入重取样时间序列来比较结果:

根据已存在的包括量的时间序列创建一个新的量幅度时间序列:

创建新的量单位的时间序列:

选项  (12)

CalendarType  (1)

CalendarType 在特定的日历中指定时间戳:

默认用 "Gregorian" 日历:

指定输入日期的格式为 "Gregorian" 日历,但以 "Jewish" 日历显示:

DateFunction  (2)

使用 DateList 定义用于诠释模糊日期字符串得函数:

使用 DateObject 定义用于诠释模糊日期字符串得函数:

指定输入的 TimeZone

HolidayCalendar  (1)

HolidayCalendar 可视化给定国家的营业日:

MetaInformation  (3)

包括额外元信息作为规则列表:

现在属性包括元信息 "Stock"

所加的元信息可像其他任何属性一样被使用:

使用 MetaInformation 确定 PlotLegends

看到可用 MetaInformation

直接获取指定信息:

可视化数据:

使用 MetaInformation 命名向量值 TimeSeries 中的分量:

提取第二个分量:

使用名称或数字提取第一和第三个分量:

MissingDataMethod  (1)

Missing 开头的值被默认为是缺失的:

MissingDataMethod 来以常量替代缺失值:

用插值替换缺失值:

默认方法是阶数为 1 的插值:

ResamplingMethod  (1)

在中间时间的值默认用一阶插值计算:

在中间时间用 ResamplingMethod 赋一个常数值:

使用零阶插值:

TemporalRegularity  (1)

明确地假设时间数据是规则间隔的:

TimeZone  (1)

指定 TimeSeries 的时区:

时间戳是在 $TimeZone 中创建的,但日期按选项指定的时区显示:

ValueDimensions  (1)

指定值的维数:

应用  (13)

天文  (2)

使用 SunPosition 产生一定日期范围内芝加哥的太阳位置:

绘制这个时期内的方位角和海拔高度变化:

使用 MoonPosition 产生一定日期范围内月亮的位置:

验证月球的轨道是倾斜于地球赤道:

人口统计学  (1)

使用 CountryData 产生英国和德国的国内生产总值:

比较这两个国家的国内生产总值:

金融  (1)

预测股票价格:

拟合一个 ARIMA 过程:

预测下半年:

天气  (1)

芝加哥每个月第一天的平均气温:

拟合一个 SARIMA 过程:

预测未来三年每个月第一天的平均气温:

能量  (1)

NuclearReactorData 可视化切尔诺贝利反应堆的能量生产:

气象学  (2)

AirPressureData 检查在长岛麦克阿瑟机场的因飓风桑迪引起的压力读数下降:

WindSpeedData 比较在约翰·肯尼迪国际机场的夏天与冬天的风速:

设备  (2)

捕捉一个以0.05秒为间隔的10秒的时间序列:

沿着移动平均绘制时间序列:

以下时间序列是通过从一个 TinkerForge 气象站读取照度数据(每0.1秒一次,持续5秒,期间不停改变设备方向)而生成的:

绘制照度值:

数据的 MinMean 以及 Max

通过轮流打开和关上环境光源来产生照度数据:

时间序列图显示了数据的近似周期性:

Fourier 验证周期性:

过滤  (1)

MeanFilter 过滤时间序列:

销售  (2)

以下数据代表一个小软件公司11年的年销售量:

LinearModelFit 对数据拟和一个线性模型:

对原始数据连同用线性模型得到的值进行绘图:

对数据进行权重为0.45的指数平滑处理:

绘制原始数据以及用指数平滑处理后的数值:

对美国1992至2015年的零售销售数据拟和一个参数模型:

TimeSeriesModelFit 对数据建一个时间序列模型:

用这个模型预测未来三个月的情况:

属性和关系  (3)

TimeSeries 在两个时间戳之间进行插值:

EventSeries 代表离散的时间:

两者在时间戳上是一致的:

然而,EventSeries 在时间戳之间不进行插值:

两者之间可以相互转换:

TimeSeries 只能包含一条路径:

时间序列只有一条路径:

对每一行数据,建立单独的 TimeSeries

与第一行数据比较:

使用 TemporalData 包含多条路径:

某点处的 TimeSeries 返回一个数值或者插值:

在一个时间戳和时间戳之间进行评估:

TemporalData 存放多条路径以及获得在某个点的值的分布:

在时间戳和时间戳之间计算:

可能存在的问题  (4)

多维数据可能与时间数值对混淆:

指定 ValueDimensions 将数据视为向量值:

累积不规则抽样时间序列:

Accumulate 将重新抽样以产生规则抽样的时间序列:

与累积值进行比较:

为了恢复该形式,假设 TemporalRegularity

TimeSeries 始终在时间戳之间进行插值:

要在时间戳之间仍然存在 Missing,将其用作值:

如果 ResamplingMethod 规范不是已实现的规范,则假设值为 Automatic

巧妙范例  (2)

生成日行迹(太阳在上午 9 点的位置,以 10 天为增量):

用动画显示中生代大陆板块的运动:

Wolfram Research (2014),TimeSeries,Wolfram 语言函数,https://reference.wolfram.com/language/ref/TimeSeries.html (更新于 2015 年).

文本

Wolfram Research (2014),TimeSeries,Wolfram 语言函数,https://reference.wolfram.com/language/ref/TimeSeries.html (更新于 2015 年).

CMS

Wolfram 语言. 2014. "TimeSeries." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2015. https://reference.wolfram.com/language/ref/TimeSeries.html.

APA

Wolfram 语言. (2014). TimeSeries. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/TimeSeries.html 年

BibTeX

@misc{reference.wolfram_2024_timeseries, author="Wolfram Research", title="{TimeSeries}", year="2015", howpublished="\url{https://reference.wolfram.com/language/ref/TimeSeries.html}", note=[Accessed: 25-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_timeseries, organization={Wolfram Research}, title={TimeSeries}, year={2015}, url={https://reference.wolfram.com/language/ref/TimeSeries.html}, note=[Accessed: 25-November-2024 ]}