Wolfram言語

時系列の処理

季節的パターンを可視化する

アメリカ中西部と南西部における季節ごとの降水量を比較する.

WeatherDataは合計の降水量をcm単位で提供する.

In[1]:=
Click for copyable input
start = {1999, 1, 1}; end = {2015, 12, 31};
In[2]:=
Click for copyable input
getData[place_] := WeatherData[place, "TotalPrecipitation", {start, end, "Month"}]

イリノイ州シャンペーンとアリゾナ州フェニックスの降水量のTimeSeriesを作成する.MissingDataMethodを指定して欠損データを補う補間を使う.

In[3]:=
Click for copyable input
makeTS[place_] := TimeSeries[getData[place], MissingDataMethod -> "Interpolation"]
In[4]:=
Click for copyable input
tsIL = makeTS[ Entity["City", {"Champaign", "Illinois", "UnitedStates"}]]
Out[4]=
In[5]:=
Click for copyable input
tsAZ = makeTS[Entity["City", {"Phoenix", "Arizona", "UnitedStates"}]]
Out[5]=

降水量を重みとしたWeightedDataを作成し,データを合計年数で平均したDateHistogramをプロットする.

In[6]:=
Click for copyable input
dataIL = WeightedData[tsIL["Dates"], tsIL["Values"]]; dataAZ = WeightedData[tsAZ["Dates"], tsAZ["Values"]];
In[7]:=
Click for copyable input
totalyears = (end[[1]] - start[[1]] + 1);
In[8]:=
Click for copyable input
avg := Function[{x, y}, y/totalyears]
In[9]:=
Click for copyable input
makeHistogram[data_, lab_] := DateHistogram[data, "Month", avg, DateReduction -> "Year", PlotRange -> {All, {-1, 9}}, AxesLabel -> "cm", PlotLabel -> lab]
In[10]:=
Click for copyable input
{makeHistogram[dataIL, "IL"], makeHistogram[dataAZ, "AZ"]}
Out[10]=

関連する例

de en es fr ko pt-br ru zh