Wolfram Language

Quantities in Probability & Statistics

Nonparametric Distributions of Quantity Data

Use WeatherData to get time series of the wind speed measurements in the city of Chicago from the beginning of 2014 through the end of 2015.

In[1]:=
Click for copyable input
wsts = WeatherData["Chicago", "WindSpeed", {DateObject[{2014, 1, 1}], DateObject[{2015, 12, 31}]}]
Out[1]=

Use Histogram to visualize the distribution of wind speeds.

In[2]:=
Click for copyable input
Histogram[wsts, PlotTheme -> "Detailed", FrameLabel -> Automatic]
Out[2]=

Extract wind speed values with the missing values interpolated.

In[3]:=
Click for copyable input
winds = Values[TimeSeries[wsts, MissingDataMethod -> "Interpolation"]]
Out[3]=

Use SmoothKernelDistribution to construct a nonparametric model of wind speeds in Chicago, making sure that wind speed stays non-negative.

In[4]:=
Click for copyable input
ws\[ScriptCapitalD] = SmoothKernelDistribution[winds, Automatic, {"Bounded", Quantity[0, ("Kilometers")/("Hours")], "Gaussian"}]
Out[4]=

Use a nonparametric model of the turbine's power output as a function of wind speed to estimate the average power output for a GE 1.5 MW wind turbine installed at the location.

In[5]:=
Click for copyable input
turbine = Interpolation[ QuantityArray[{{0.`, 0.`}, {0.5`, 0.`}, {1.`, 0.`}, {1.5`, 0.`}, {2.`, 0.`}, {2.5`, 0.`}, {3.`, 0.`}, {3.5`, 0.`}, {4.`, 36.`}, {4.5`, 66.`}, {5.`, 104.`}, {5.5`, 150.`}, {6.`, 205.`}, {6.5`, 269.`}, {7.`, 344.`}, {7.5`, 428.`}, {8.`, 528.`}, {8.5`, 644.`}, {9.`, 774.`}, {9.5`, 926.5`}, {10.`, 1079.`}, {10.5`, 1211.`}, {11.`, 1342.`}, {11.5`, 1401.`}, {12.`, 1460.`}, {12.5`, 1477.`}, {13.`, 1494.`}, {13.5`, 1500.`}, {30.`, 1500.`}}, {"Meters"/"Seconds", "Kilowatts"}] // Normal, InterpolationOrder -> 1];
In[6]:=
Click for copyable input
NExpectation[turbine[v], v \[Distributed] ws\[ScriptCapitalD]]
Out[6]=

Related Examples

de es fr ja ko pt-br ru zh