TimeSeriesWindow[tes,{tmin,tmax}]
给出时间或事件序列数据 tes 中位于 tmin 与 tmax 之间的元素.
TimeSeriesWindow[tes,winspec]
给出 tes 中满足窗口规范 winspec 的元素.
TimeSeriesWindow
TimeSeriesWindow[tes,{tmin,tmax}]
给出时间或事件序列数据 tes 中位于 tmin 与 tmax 之间的元素.
TimeSeriesWindow[tes,winspec]
给出 tes 中满足窗口规范 winspec 的元素.
更多信息和选项
- TimeSeriesWindow 用于选取落在给定的窗中的时间序列的子集.
- TimeSeriesWindow 将选择时间戳
满足
的数据点. - 时间或事件序列数据 tes 的可能形式包括:
-
TimeSeries[…] 连续的、按时间顺序排列的采样数据 EventSeries[…] 带有值的时间事件集合 TemporalData[…] 由时间-数值对组成的一条或多条路径 {{t1,x1},{t2,x2},…} 时间-数值对列表 {x1,x2,…} 从 0 开始的隐含整数时间对应的值列表 - 窗口规范 winspec 可以给出为:
-
{tmin,tmax} 时间或日期限制 Interval[…] 一个或多个数值时间区间 DateInterval[…] 一个或多个日历日期区间 DateObject[_, gran] 单一粒度的 DateObject daytype 日期类型规范 - 窗时间 tmin 和 tmax 可以以 Automatic、数字或者日期给出. 当 tmin 或者 tmax 以 Automatic 给出,分别使用 tseries 中第一个和最后一个时间.
- 可能的 daytype 值包括 "Weekday"、"Weekend"、Monday 到 Sunday、"BeginningOfMonth"、"EndOfMonth"、"BusinessDay" 和 "Holiday".
- TimeSeriesWindow 具有以下选项:
-
ResamplingMethod Automatic 重采样路径使用的方法 IncludeWindowTimes False 如果不是时间戳成员是否在 tmin 和 tmax 创建值 CalendarType Automatic 诠释日期的日历系统 HolidayCalendar Automatic 用于工作日的假日日历安排 - 默认情况下,只有当窗口时间 tmin 和 tmax 是 tes 的现有时间戳时,它们才会被包含在内.
- 如果 tmin 和 tmax 超出了 tes 时间戳的范围,它们将被裁剪到该范围内.
范例
打开所有单元 关闭所有单元基本范例 (2)
ts = TimeSeries[{1, 2, 3, 4, 5}, {DateObject[{2026, 3, 13}, "Day"]}]TimeSeriesWindow[ts, {DateObject[{2026, 3, 14}, "Day"], DateObject[{2026, 3, 16}, "Day"]}]Normal[%]es = EventSeries[{{.1, Subscript[x, 1]}, {.6, Subscript[x, 2]}, {1.3, Subscript[x, 3]}, {2.2, Subscript[x, 4]}, {2.5, Subscript[x, 5]}}];TimeSeriesWindow[es, {.9, 2.3}]Normal[%]范围 (7)
基本用途 (2)
ts = TimeSeries[TimeEventSeries`TimestampData[Association["UniformlySpacedQ" -> False,
"Timestamps" -> TabularColumn[Association[
"Data" -> {21, {{NumericArray[{15492, 15495, 15496, 15497, 15498, 15499, 15502, 15503, 15504,
15505, ... , 284.53455, 282.832828, 280.82584, 279.804813, 282.53754, 285.710728, 291.056065,
289.044041, 282.887882, 286.026035, 280.630649, 282.622623, 284.93494, 282.437443,
290.325321}, {}, None}, "ElementType" -> "Real64"]], Association[]];fridays = TimeSeriesWindow[ts, Friday]DateListPlot[{ts, fridays}, Joined -> {True, False}, Filling -> 2 -> 0, FillingStyle -> Directive[Gray, Thick]]fridays["Timestamps"]//NormalDateSelect[ts["Timestamps"]//Normal, #DayName === Friday&]Select[ts["Timestamps"], DayMatchQ[Friday]]//NormalSelect[ts, DayMatchQ[#Timestamp, Friday]&]%["Timestamps"]//Normaldata = TimeSeries@RandomFunction[ARIMAProcess[{.1}, 1, {.2}, 1], {1000}]ListLinePlot[data]win1 = TimeSeriesWindow[data, {Automatic, 300}];
win2 = TimeSeriesWindow[data, {300, 700}];
win3 = TimeSeriesWindow[data, {700, Automatic}];ListLinePlot[{win1, win2, win3}, PlotLegends -> {"win1", "win2", "win3"}]数据类型 (5)
v = {a, b, c, d, e};TimeSeriesWindow[v, {2, 4}]v = {{1, a}, {3, b}, {7, c}, {14, d}, {15, e}};TimeSeriesWindow[v, {2, 8}]从 TimeSeries 中提取50个数值:
ts = TimeSeries[TimeEventSeries`TimestampData[Association["UniformlySpacedQ" -> True, "Count" -> 100,
"Endpoints" -> TabularColumn[Association["Data" -> {{0, 99}, {}, None},
"ElementType" -> "Integer64"]], "MinimumTimeIncrement" -> 1, "Caller ... -5.83329995009813, -5.365194518466113, -5.614668108914484,
-6.477246191853266, -7.461704439607946, -6.79657593242878, -5.864937981765857,
-6.27785271209235, -5.841962111797332}, {}, None}, "ElementType" -> "Real64"]], Association[]];win = TimeSeriesWindow[ts, {10, 59}]ListLinePlot[{ts, win}]从 EventSeries 中提取30个数值:
es = EventSeries[TimeEventSeries`TimestampData[Association["UniformlySpacedQ" -> True, "Count" -> 50,
"Endpoints" -> TabularColumn[Association["Data" -> {{0, 49}, {}, None},
"ElementType" -> "Integer64"]], "MinimumTimeIncrement" -> 1, "Caller ... -1, -1, 1, 1, -1, 1, 1, -1, -1, 1, 1, 1, -1, -1, 1, -1,
1, -1, -1, -1, -1, -1, 1, -1, -1, -1, -1, 1, -1, 1, 1, 1, 1, 1, -1, 1, -1, -1, -1, 1, 1, 1,
-1, 1, 1, -1, -1, -1, -1}, {}, None}, "ElementType" -> "Integer64"]], Association[]];win = TimeSeriesWindow[es, {10, 39}]ListPlot[{es, win}, Filling -> Axis]把 TemporalData 的路径限制在较小的区间:
td = RandomFunction[WienerProcess[], {0, 20, 0.01}, 5]win = TimeSeriesWindow[td, {3, 15}]ListLinePlot[#, PlotRange -> {{0, 20}, {-10, 10}}]& /@ {td, win}选项 (4)
IncludeWindowTimes (1)
ts = {{1, 1}, {2, 2}, {3, 3}, {4, 4}};TimeSeriesWindow[ts, {1.5, 3.5}]TimeSeriesWindow[ts, {2, 3}]TimeSeriesWindow[ts, {1.5, 3.5}, IncludeWindowTimes -> True]TimeSeriesWindow[ts, {1.5, 3.5}, IncludeWindowTimes -> {False, True}]ResamplingMethod (1)
s = {Subscript[x, 1], Subscript[x, 2], Subscript[x, 3], Subscript[x, 4]};
t = {2, 4, 6, 8};data = TimeSeries[s, {t}];
data//Normalwin1 = TimeSeriesWindow[data, {4, 6.4}, IncludeWindowTimes -> True];win1//Normal//Simplifywin2 = TimeSeriesWindow[data, {4, 6.4}, IncludeWindowTimes -> True, ResamplingMethod -> {"Interpolation", InterpolationOrder -> 1}];win2//Normal//Simplifywin3 = TimeSeriesWindow[data, {4, 6.4}, ResamplingMethod -> {"Constant", c}, IncludeWindowTimes -> True];win3//NormalCalendarType (1)
应用 (3)
stepdata = TemporalData[TimeSeries, {{{10785, 11753, 7092, 5290, 5022, 7438, 13386, 11195, 12499, 12495,
12004, 11833, 4097, 14270, 10280, 11947, 12699, 15634, 12332, 8399, 4680, 10034, 9173, 5309,
9552, 5605, 13294, 7600, 2417, 0, 1315, 9066, 11624 ... 1, 9618, 21243, 22273, 15869, 17687, 9263,
21162, 14724, 6386}}, {TemporalData`DateSpecification[{2013, 4, 1, 0, 0, 0.},
{2013, 9, 1, 0, 0, 0.}, {1, "Day"}]}, 1, {"Discrete", 1}, {"Discrete", 1}, 1,
{ValueDimensions -> 1}}, True, 10.];monthlyTS = Table[TimeSeriesWindow[stepdata, DateObject[{2013, k}]], {k, 4, 8}];months = {"April", "May", "June", "July", "August"};DateListPlot[monthlyTS, PlotLegends -> months]monthlyTotals = Total /@ monthlyTS;PieChart[monthlyTotals, ChartLabels -> Placed[{monthlyTotals, months}, {"RadialCenter", "RadialCallout"}]]td = TemporalData[TimeSeries,
{{QuantityArray[StructuredArray`StructuredData[{365},
{{-2.94, -7.28, -14.94, -3.39, -2.56, -21, -23.06, -14.33, -6.5, 1.33, 3.22, 1.67, 5, -1.72,
-2.33, -7.78, -0.5, -9, -4.28, 1.83, -0.94, -17, -12.17, -18 ... cation[{2014, 1, 1, 0, 0, 0.}, {2014, 12, 31, 0, 0, 0.}, {1, "Day"}]},
1, {"Continuous", 1}, {"Discrete", 1}, 1, {ValueDimensions -> 1, DateFunction -> Automatic,
ResamplingMethod -> {"Interpolation", InterpolationOrder -> 1}}}, True, 10.1];summer = TimeSeriesWindow[td, {DateObject[{2014, 6, 1}, "Day", "Gregorian", -6.], DateObject[{2014, 9, 1}, "Day", "Gregorian", -6.]}]{Min[#], Mean[#], Max[#]}&@summerDateListPlot[{td, summer}, FrameLabel -> Automatic]ts = TimeSeries[FinancialData["GOOGL", {"1 Jan 2012", "1 Jan 2014"}]]DateListPlot[ts]选取 2012 年 5 月 4 日至 8 月 4 日之间的元素:
win = TimeSeriesWindow[ts, {{2012, 5, 4}, {2012, 8, 4}}]DateListPlot[win]TimeSeriesWindow[ts, DateObject[{2012, 6}, "Month"]]end = TimeSeriesWindow[ts, "EndOfMonth"]DateListPlot[end, PlotMarkers -> Automatic]属性和关系 (1)
Take 根据一段索引范围提取时间序列中的元素:
ts = TimeSeries[Range[10], {DateObject[{2026, 1, 21}]}]Take[ts, {3, 6}]TimeSeriesWindow 使用时间范围:
TimeSeriesWindow[ts, {DateObject[{2026, 1, 23}], DateObject[{2026, 1, 26}]}]ts["Times"][[{3, 6}]]//Normal文本
Wolfram Research (2014),TimeSeriesWindow,Wolfram 语言函数,https://reference.wolfram.com/language/ref/TimeSeriesWindow.html (更新于 2026 年).
CMS
Wolfram 语言. 2014. "TimeSeriesWindow." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2026. https://reference.wolfram.com/language/ref/TimeSeriesWindow.html.
APA
Wolfram 语言. (2014). TimeSeriesWindow. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/TimeSeriesWindow.html 年
BibTeX
@misc{reference.wolfram_2026_timeserieswindow, author="Wolfram Research", title="{TimeSeriesWindow}", year="2026", howpublished="\url{https://reference.wolfram.com/language/ref/TimeSeriesWindow.html}", note=[Accessed: 13-November-2026]}
BibLaTeX
@online{reference.wolfram_2026_timeserieswindow, organization={Wolfram Research}, title={TimeSeriesWindow}, year={2026}, url={https://reference.wolfram.com/language/ref/TimeSeriesWindow.html}, note=[Accessed: 13-November-2026]}