Wolfram Language

Acesso mais produtivo à base de conhecimento

Bolsas da Fundação Nacional de Ciência

A Fundação Nacional de Ciências dos Estados Undidos (NSF) concedeu cerca de 12.000 bolsas em 2015. Aqui, bolsas, pesquisadores e suas instituições são analisados utilizando dados disponíveis em www.nsf.gov/awardsearch/download.jsp. Em particular, você pode carregar um anco de dados de entidade que contém esses dados como um ResourceObject, em seguida explore a distribuição de tamanhos das bolsas, as propriedades quantitativas e qualitativas das propostas e das bolsas, e a dispersão geográfica das instituições associadas.

Para começar, carregue um banco de dados de enteidades que contém os dados da NSF de um ResourceObject.

In[1]:=
Click for copyable input
nsfStore = ResourceData[ ResourceObject[ Association[ "Name" -> "National Science Foundation Grants - 2015", "UUID" -> "0e9655df-86b6-4e20-bcc9-87365562357b", "ResourceType" -> "DataResource", "Version" -> "1.0.0", "Description" -> "Data on National Science Foundation grants (and \ associated investigators and institutions) awarded in the the year \ 2015.", "ContentSize" -> Quantity[0, "Bytes"], "ContentElements" -> {"EntityStore"}]]]
Out[1]=

Registre o banco de dados para esta sessão.

In[2]:=
Click for copyable input
PrependTo[$EntityStores, nsfStore];

Veja as propriedades das bolsas disponíveis usando o tipo de entidade "NSFGrant" do banco de dados.

In[3]:=
Click for copyable input
EntityValue["NSFGrant", "Properties"]
Out[3]=

Extraia dados sobre bolsas selecionadas aleatoriamente.

mostre o input completo da Wolfram Language
In[4]:=
Click for copyable input
TextGrid[List @@@ (RandomEntity["NSFGrant"]["PropertyAssociation"] // SortBy[#, ByteCount] & // Normal // Take[#, 16] &), Dividers -> All, Background -> {Automatic, {{LightBlue, None}}}] // TraditionalForm
Out[4]//TraditionalForm=

Faça um gráfico da distribuição do tamanho das bolsas.

In[5]:=
Click for copyable input
awardAmounts = EntityValue["NSFGrant", "AwardAmount"];
In[6]:=
Click for copyable input
Histogram[awardAmounts, ScalingFunctions -> {Identity, "Log"}, PlotRange -> All, AxesLabel -> Automatic]
Out[6]=

Mostre os detalhes das três maiores bolsas.

In[7]:=
Click for copyable input
EntityValue[ EntityClass["NSFGrant", "AwardAmount" -> TakeLargest[3]], "Dataset"]
Out[7]=

Examineo total de bolsas concedidas para cada direção da NSF.

mostre o input completo da Wolfram Language
In[8]:=
Click for copyable input
TextGrid[SortBy[{#1, Total[#2[[All, -1]]]} & @@@ Normal[GroupBy[ EntityValue["NSFGrant", {"Directorate", "AwardAmount"}], First]], Last] // DeleteMissing[#, 1, 2] & // Reverse, Alignment -> {{Left, Decimal}, Automatic}, Dividers -> All, Background -> {Automatic, {{LightBlue, None}}}]
Out[8]=

Compare a distribuição dos primeiros algarismos dos valores das bolsas em dólar com a lei de Benford.

mostre o input completo da Wolfram Language
In[9]:=
Click for copyable input
With[{$s = QuantityMagnitude[ EntityValue["NSFGrant", EntityProperty["NSFGrant", "AwardAmount"]]]}, ListPlot[{Rest[Sort[Tally[IntegerDigits[#][[1]] & /@ $s]]], Table[{d, Length[$s] Log10[1 + 1/d]}, {d, 9}]}, Filling -> Axis, PlotLegends -> {"NSF grants", "Benford"}]]
Out[9]=

Faça uma nuvem de palavras com as palavras mais usadas nas bolsas de matemática, física e química.

In[10]:=
Click for copyable input
keywords = EntityValue[EntityClass["NSFGrant", "Division" -> #], "KeywordTally"] & /@ {"Division Of Mathematical Sciences", "Division Of Physics", "Division Of Chemistry"};
In[11]:=
Click for copyable input
Row[WordCloud[ Merge[Association @@ (Rule @@@ #) & /@ DeleteMissing[#], Total]] & /@ keywords]
Out[11]=

Visualize as bolsas da NSF pela quantidade e o CEP.

mostre o input completo da Wolfram Language
In[12]:=
Click for copyable input
amountsandinsts = EntityValue[ "NSFGrant", {EntityProperty["NSFGrant", "AwardAmount"], EntityProperty["NSFGrant", "Institution"]}];
In[13]:=
Click for copyable input
amountsinzips = (#[[1, 1]] -> Total[#[[All, -1]]]) & /@ Normal[GroupBy[Transpose[{EntityValue[ amountsandinsts[[All, -1]], EntityProperty["NSFInstitution", "ZIPCode"] ], amountsandinsts[[All, 1]]}], First]][[All, -1]];
In[14]:=
Click for copyable input
GeoRegionValuePlot[SortBy[amountsinzips, Last], ColorFunction -> ColorData["GreenPinkTones"], GeoRange -> Entity["Country", "UnitedStates"], PlotLegends -> Histogram]
Out[14]=

Exemplos Relacionados

de en es fr ja ko ru zh