Os números da maratona de Chicago de 2015
A Maratona de Chicago em 2015 atraiu 45.000 corredores para Chicago em 11 de Outubro de 2015. Mais de 37.000 completaram a prova, e detalhes do desempenho de cada corredor foram cuidadosamente registrados. Explore e visualize as características dos corredores e os seus desempenhos usando um banco de entidades personalizado que contém esses dados.
Carregue um banco de dados de entidades da maratona de um ResourceObject.
marathonEntityStore = ResourceData[
ResourceObject[
Association[
"Name" -> "2015 Chicago Marathon Data",
"UUID" -> "7dc77972-cfc3-48dc-8d08-0292c6d2a929",
"ResourceType" -> "DataResource", "Version" -> "1.0.0",
"Description" -> "2015 Chicago Marathon participant data",
"ContentSize" -> Quantity[1990.2215919999999`, "Megabytes"],
"ContentElements" -> {"Content"}]]]
Registre o banco de dados para esta sessão.
PrependTo[$EntityStores, marathonEntityStore];
Extraia os número total de corredores e, usando uma classe de entidade definida implicitamente, o número de participantes masculinos e femininos.
EntityValue["ChicagoMarathon2015", "EntityCount"]
Table[EntityValue[
EntityClass["ChicagoMarathon2015", "Gender" -> gender],
"EntityCount"], {gender, {Entity["Gender", "Male"],
Entity["Gender", "Female"]}}]
Selecione cinco corredores aleatóriamente.
RandomEntity["ChicagoMarathon2015", 5]
Veja as propriedades armazenadas para um corredor específico.
Entity["ChicagoMarathon2015", "Runner145"]["PropertyAssociation"]
Extraia as contagens de nacionalidades dos corredores e faça uma tabela das nacionalidades mais comuns.
nationalityTallies =
Reverse[SortBy[
Tally[EntityValue["ChicagoMarathon2015",
EntityProperty["ChicagoMarathon2015", "Country"]]], Last]];
Visualize as rotas geodésicas de todos os países de origem até Chicago.
With[{chicago =
Entity["City", {"Chicago", "Illinois", "UnitedStates"}]},
GeoGraphics[{Darker[Green],
GeoPath[{chicago, #} & /@ nationalityTallies[[All, 1]],
"Geodesic"]},
GeoRange -> "World",
GeoProjection -> "Robinson",
GeoCenter -> chicago]]
Construa um heat map (mapa de "pontos quentes") dos EUA mostrando locais de origem para os participantes americanos.
Saiba o número de corredores por variação da média de divisão.
allkm = Table[
Normal[allTimeSplits[[i]][2 ;;, "Time"]], {i,
Length[allTimeSplits]}];
allsplitbins = DeleteMissing[Transpose[allkm], 2];
meanall = Table[N[Mean[allsplitbins[[i]]]], {i, Length[allsplitbins]}]
marathondistances = (allTimeSplits[[1]])[All, "Split"] // Normal
differencesall = Table[{marathondistances[[i + 1]],
allsplitbins[[i]] - meanall[[i]]},
{i, Length[allsplitbins]}];
allHistograms =
Histogram[#2, {60}, PlotLabel -> NumberForm[#1, {3, 1}]] & @@@
differencesall;
Gere histogramas para cada divisão.
Grid[Partition[allHistograms, UpTo[3]]]
Faça um gráfico de uma distribuição de kernel suave das diferenças entre divisões de corredores e médias.