我一直在使用Mathemathica来收集特定位置的风速数据。 Mathematica给了我一个TimeSeries,我想从中知道最大值和最小值。我使用了“ FindPeaks”功能,但是由于它不是定期采样的时间序列,因此该功能无法正常工作。有没有办法获得最大值?
以下是数据:
data = WindSpeedData[{19.416258, -99.719266}, {DateObject[{2016, 1,
1}], DateObject[{2017, 1, 2}]}]
答案 0 :(得分:1)
此
Normal[data]
将撤消您的实际风速包裹在其中的时间序列层的一部分。
您可以看到,您可能想要的是每个列表中第二项的一部分,这似乎是实际速度。所以
Max[Map[#[[2, 1]] &, Normal[data]]]
将查看第二部分的开头(即您的速度),然后尝试找到最大值。
对于您的示例数据,显示Max[29.0802, "NotAvailable"]
,并且最大风速为29.0802。
结尾的"NotAvailable"
仍然是它们将实际数据包装在各层内部的一部分。那里可能缺少一个风速,而Max
不知道该怎么做。
答案 1 :(得分:0)
感谢@Bill,我用过
Max[data]
它让我["Not available", 46.8 km/h]
我只是使用您的代码并给了我相同的结果,但是顺序不同[46.8 km/h, "Not available"]
。通过在网格中显示数据,我再次检查了基准(46.8)。非常感谢,我将继续使用常规功能。