主要内容

使用实时编辑器加速探索性编程

下面是如何使用Live Editor加速探索性编程的示例。这个例子演示了如何使用实时编辑器:

  • 查看输出和产生输出的代码。

  • 将程序划分为几个部分,分别评估代码块。

  • 包括可视化。

  • 使用控件试验参数值。

  • 总结并分享你的发现。

公路伤亡数据

Live Editor显示输出和产生输出的代码。要运行部分,请转到住编辑器选项卡,并选择运行部分按钮。您还可以单击将鼠标移动到区域左侧边缘时出现的蓝色条。

在本例中,我们将研究一些高速公路死亡数据。首先加载数据。变量显示为表的列标题。

负载死亡人数死亡(1:10,:)
ans =10×8表经度纬度死亡司机车辆车辆英里酒精相关城市人口_________ ______________ _______________ ____________ ______________ _______________怀俄明州-107.56 43.033 164 380.18 671.53 9261 54 65.226哥伦比亚区-77.027 38.892 43 349.12 240.4 3742 12 100佛蒙特州-72.556 44.043 98 550.46 551.52 7855 20 38.196北达科他州-99.5 47.469 100 461.78 721.84 7594 35 55.807南达科他州-99.679 44.272 197 563.3 882.77 8784 76 51.923特拉华州-75.494 39.107 134533.94 728.52 9301 48 80.021蒙大拿-110.58 46.867 229 712.88 1056.7 11207 100 54.031罗德岛-71.434 41.589 83 741.84 834.5 8473 41 90.936新汉普郡-71.559 43.908 171 985.77 1244.6 13216 51 59.181缅因州-69.081 44.886 194 984.83 1106.8 14948 58 40.206

计算死亡率

实时编辑器允许您将程序划分为包含文本、代码和输出的部分。若要创建新部分,请转到住编辑器选项卡,然后单击节休息按钮。部分中的代码可以独立运行,这使得在编写程序时可以很容易地探索思路。

计算每百万车辆英里的死亡率。从这些数值中,我们可以找到死亡率最低和最高的州。

states = fatalities.Properties.RowNames;rate = fatalities.deaths./ mortality . vehiclemiles;[~, minIdx] = min(速率);最低事故率[~, maxIdx] = max(rate);最大事故率disp([州{minIdx}死亡率最低的是num2str(率(minIdx))))
马萨诸塞州的死亡率最低,为0.0086907
disp([州{maxIdx}死亡率最高的是num2str(率(maxIdx))))
密西西比州的死亡率最高,为0.022825

死亡人数分布

您可以在程序中包含可视化。与输出一样,图表和图形与生成它们的代码一起出现。

我们可以用柱状图来看看各州死亡率的分布情况。美国有11个州的死亡率超过每百万英里0.02人。

直方图(速度,10)包含(“每百万英里车辆死亡人数”) ylabel (“州数”

在数据中找到相关性

您可以在实时编辑器中通过试验参数值来快速探索数据,以查看结果将如何变化。添加控件以交互方式更改参数值。要添加控件,请转到住编辑器选项卡,单击控制按钮,并从可用选项中进行选择。

我们可以对这些数据进行实验,看看表中的变量是否与高速公路死亡人数相关。例如,在城市人口比例较高的州,公路死亡率似乎较低。

dataToPlot =“urbanPopulation”;关闭关闭任何未打开的数字散射(死亡。(dataToPlot))%绘图死亡率vs.选定变量包含(dataToPlot) ylabel (“每百万英里车辆死亡人数百分比”)举行xmin = min(deaths .(dataToPlot));xmax = max(deaths .(dataToPlot));p = polyfit(deaths .(dataToPlot),rate,1);计算并绘制最小二乘线Plot ([xmin xmax], polyval(p,[xmin xmax]))

在美国地图上绘制死亡人数和城市化

总结你的结果,并与你的同事分享你的现场脚本。使用您的活动脚本,他们可以重新创建和扩展您的分析。您还可以将分析另存为HTML、Microsoft®Word或PDF文档以供发布。

基于这一分析,我们可以在美国大陆地图上使用死亡率和城市人口的图表来总结我们的发现。

负载usastates.mat图geoplot ([usastates。Lat]、[usastates。朗),“黑”) geobasemapdarkwater持有geoscatter (fatalities.latitude fatalities.longitude 2000 *, fatalities.urbanPopulation,“填充”) c = colorbar;标题(c,“城市百分比”

相关的话题