Assignment 11A
Explore NYC Open Data to see what data is available. Select a dataset
to import via R Socrata and answer a question about Corona or your final
project. Create a R Notebook to share your analysis. Include:
- Define global display options
- Define display options for at least one code
chunk
- Use the kable or datatable
functions to create at least one formatted tables
- Create at least one plot or map
Active Tobacco Retailer Dealer Licenses:
- Import this dataset of all tobacco licenses in New York City
- Summarize by Borough or Neighborhood Tabulation Area to see how many
tobacco licenses were granted in Corona vs other neighborhoods in the
last year
Code
Data Processing Preparation
To prepare for the analysis, we will load packages before processing
with our data exploration.
Load Packages
library(tidyverse)
library(tidycensus)
library(scales)
library(sf)
library(RColorBrewer)
library(RSocrata)
library(ggcharts)
library(ggblanket)
library(knitr)
library(DT)
options(scipen = 999)
Import the Dataframe with RSocrata
Using RSocrata, we can import the data for Active
Tobacco Retailer Dealer Licenses from the website with their API
link.
tobacco_raw <- read.socrata("https://data.cityofnewyork.us/resource/adw8-wvxb.csv")
Data Processing
Filter Queens from the Raw Data
To narrow our exploration, we will filter and create a new dataset to
show Queens only.
tobacco_queens <- tobacco_raw %>%
filter(Address.Borough == "Queens") %>%
select(Address.City, Address.ZIP, Address.Borough, Community.Board,
NTA)
datatable(tobacco_queens)
Methods
Purpose
The aim of this exploration is to outline the total amount of tobacco
retailer with active licenses in the neighbourhood in the Queens
borough. For this particular study, we will separate the neighbourhoods
by ZIP code number and focus on ZIP code 11368, which
is the ZIP code for Corona.
Methodology
For this exploration, there is no specific calculation used to sum
the total number of active tobacco retailers. However, we did use a code
chunk (shown in “Summary Tables” below) to help us summarise the total
amount.
Results
Summary Tables
tobacco_queens_stats <- tobacco_queens %>%
group_by(Address.ZIP) %>%
summarise(active_tobacco_retailers = n())
datatable(tobacco_queens_stats)
Plot

Conclusion
Based on the summary statistics and plot above, we can see that
Corona (ZIP code 11368) ranks the second
highest for the total amount of active tobacco retailers
amongst other neighbourhoods in Queens, with a total of 73 active
retailers.
LS0tCnRpdGxlOiAiQWN0aXZlIFRvYmFjY28gUmV0YWlsZXIgRGVhbGVyIExpY2Vuc2VzIgpvdXRwdXQ6IAogIGh0bWxfbm90ZWJvb2s6CiAgICBjb2RlX2ZvbGRpbmc6IG5vbmUKICAgIHRoZW1lOiB5ZXRpCiAgICB0b2M6IHRydWUKICAgIHRvY19kZXB0aDogNQogICAgdG9jX2Zsb2F0OiB0cnVlCi0tLQojIEFzc2lnbm1lbnQgMTFBCkV4cGxvcmUgTllDIE9wZW4gRGF0YSB0byBzZWUgd2hhdCBkYXRhIGlzIGF2YWlsYWJsZS4gU2VsZWN0IGEgZGF0YXNldCB0byBpbXBvcnQgdmlhIFIgU29jcmF0YSBhbmQgYW5zd2VyIGEgcXVlc3Rpb24gYWJvdXQgQ29yb25hIG9yIHlvdXIgZmluYWwgcHJvamVjdC4gQ3JlYXRlIGEgUiBOb3RlYm9vayB0byBzaGFyZSB5b3VyIGFuYWx5c2lzLiBJbmNsdWRlOgoKKiBEZWZpbmUgX19nbG9iYWwgZGlzcGxheSBvcHRpb25zX18KKiBEZWZpbmUgX19kaXNwbGF5IG9wdGlvbnMgZm9yIGF0IGxlYXN0IG9uZSBjb2RlIGNodW5rX18KKiBVc2UgdGhlIF9fa2FibGVfXyBvciBfX2RhdGF0YWJsZV9fIGZ1bmN0aW9ucyB0byBjcmVhdGUgYXQgbGVhc3Qgb25lIGZvcm1hdHRlZCB0YWJsZXMKKiBDcmVhdGUgYXQgbGVhc3Qgb25lIF9fcGxvdCBvciBtYXBfXwoKIyMjIEFjdGl2ZSBUb2JhY2NvIFJldGFpbGVyIERlYWxlciBMaWNlbnNlczogIAoqIEltcG9ydCB0aGlzIGRhdGFzZXQgb2YgYWxsIHRvYmFjY28gbGljZW5zZXMgaW4gTmV3IFlvcmsgQ2l0eQoqIFN1bW1hcml6ZSBieSBCb3JvdWdoIG9yIE5laWdoYm9yaG9vZCBUYWJ1bGF0aW9uIEFyZWEgdG8gc2VlIGhvdyBtYW55IHRvYmFjY28gbGljZW5zZXMgd2VyZSBncmFudGVkIGluIENvcm9uYSB2cyBvdGhlciBuZWlnaGJvcmhvb2RzIGluIHRoZSBsYXN0IHllYXIKCmBgYHtyIHNldHVwLCBpbmNsdWRlID0gRkFMU0V9CmtuaXRyOjpvcHRzX2NodW5rJHNldChlY2hvID0gVCwKICAgICAgICAgICAgICAgICAgICAgIHF1aWV0bHkgPSBULAogICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZSA9IEYpCmBgYAoKKioqCgojIENvZGUKIyMgRGF0YSBQcm9jZXNzaW5nIFByZXBhcmF0aW9uClRvIHByZXBhcmUgZm9yIHRoZSBhbmFseXNpcywgd2Ugd2lsbCBsb2FkIHBhY2thZ2VzIGJlZm9yZSBwcm9jZXNzaW5nIHdpdGggb3VyIGRhdGEgZXhwbG9yYXRpb24uCgojIyMjIExvYWQgUGFja2FnZXMKYGBge3J9CmxpYnJhcnkodGlkeXZlcnNlKQpsaWJyYXJ5KHRpZHljZW5zdXMpCmxpYnJhcnkoc2NhbGVzKQpsaWJyYXJ5KHNmKQpsaWJyYXJ5KFJDb2xvckJyZXdlcikKbGlicmFyeShSU29jcmF0YSkKbGlicmFyeShnZ2NoYXJ0cykKbGlicmFyeShnZ2JsYW5rZXQpCmxpYnJhcnkoa25pdHIpCmxpYnJhcnkoRFQpCm9wdGlvbnMoc2NpcGVuID0gOTk5KQpgYGAKCiMjIyMgSW1wb3J0IHRoZSBEYXRhZnJhbWUgd2l0aCBSU29jcmF0YQpVc2luZyBfX1JTb2NyYXRhX18sIHdlIGNhbiBpbXBvcnQgdGhlIGRhdGEgZm9yIEFjdGl2ZSBUb2JhY2NvIFJldGFpbGVyIERlYWxlciBMaWNlbnNlcyBmcm9tIHRoZSB3ZWJzaXRlIHdpdGggdGhlaXIgQVBJIGxpbmsuCmBgYHtyfQp0b2JhY2NvX3JhdyA8LSByZWFkLnNvY3JhdGEoImh0dHBzOi8vZGF0YS5jaXR5b2ZuZXd5b3JrLnVzL3Jlc291cmNlL2Fkdzgtd3Z4Yi5jc3YiKQpgYGAKCiMjIERhdGEgUHJvY2Vzc2luZwojIyMjIyBGaWx0ZXIgUXVlZW5zIGZyb20gdGhlIFJhdyBEYXRhClRvIG5hcnJvdyBvdXIgZXhwbG9yYXRpb24sIHdlIHdpbGwgZmlsdGVyIGFuZCBjcmVhdGUgYSBuZXcgZGF0YXNldCB0byBzaG93IFF1ZWVucyBvbmx5LgpgYGB7cn0KdG9iYWNjb19xdWVlbnMgPC0gdG9iYWNjb19yYXcgJT4lCiAgZmlsdGVyKEFkZHJlc3MuQm9yb3VnaCA9PSAiUXVlZW5zIikgJT4lIAogIHNlbGVjdChBZGRyZXNzLkNpdHksIEFkZHJlc3MuWklQLCBBZGRyZXNzLkJvcm91Z2gsIENvbW11bml0eS5Cb2FyZCwKICAgICAgICAgTlRBKQoKZGF0YXRhYmxlKHRvYmFjY29fcXVlZW5zKQpgYGAKCioqKgoKIyBNZXRob2RzCiMjIyBQdXJwb3NlClRoZSBhaW0gb2YgdGhpcyBleHBsb3JhdGlvbiBpcyB0byBvdXRsaW5lIHRoZSB0b3RhbCBhbW91bnQgb2YgdG9iYWNjbyByZXRhaWxlciB3aXRoIGFjdGl2ZSBsaWNlbnNlcyBpbiB0aGUgbmVpZ2hib3VyaG9vZCBpbiB0aGUgUXVlZW5zIGJvcm91Z2guIEZvciB0aGlzIHBhcnRpY3VsYXIgc3R1ZHksIHdlIHdpbGwgc2VwYXJhdGUgdGhlIG5laWdoYm91cmhvb2RzIGJ5IFpJUCBjb2RlIG51bWJlciBhbmQgZm9jdXMgb24gWklQIGNvZGUgX18xMTM2OF9fLCB3aGljaCBpcyB0aGUgWklQIGNvZGUgZm9yIF9fQ29yb25hX18uCgojIyMgU291cmNlcwpUaGUgbWFpbiBzb3VyY2UgZm9yIHRoZSBkYXRhZnJhbWUgaXMgdGhlIFsiQWN0aXZlIFRvYmFjY28gUmV0YWlsZXIgRGVhbGVyIExpY2Vuc2VzIl0oaHR0cHM6Ly9kYXRhLmNpdHlvZm5ld3lvcmsudXMvQnVzaW5lc3MvQWN0aXZlLVRvYmFjY28tUmV0YWlsLURlYWxlci1MaWNlbnNlcy9hZHc4LXd2eGIvZGF0YSkgZnJvbSB0aGUgTllDIE9wZW4gRGF0YS4KCiMjIyBNZXRob2RvbG9neQpGb3IgdGhpcyBleHBsb3JhdGlvbiwgdGhlcmUgaXMgbm8gc3BlY2lmaWMgY2FsY3VsYXRpb24gdXNlZCB0byBzdW0gdGhlIHRvdGFsIG51bWJlciBvZiBhY3RpdmUgdG9iYWNjbyByZXRhaWxlcnMuIEhvd2V2ZXIsIHdlIGRpZCB1c2UgYSBjb2RlIGNodW5rIChzaG93biBpbiAiU3VtbWFyeSBUYWJsZXMiIGJlbG93KSB0byBoZWxwIHVzIHN1bW1hcmlzZSB0aGUgdG90YWwgYW1vdW50LgoKIyBSZXN1bHRzCiMjIyBTdW1tYXJ5IFRhYmxlcwpgYGB7cn0KdG9iYWNjb19xdWVlbnNfc3RhdHMgPC0gdG9iYWNjb19xdWVlbnMgJT4lCiAgZ3JvdXBfYnkoQWRkcmVzcy5aSVApICU+JSAKICBzdW1tYXJpc2UoYWN0aXZlX3RvYmFjY29fcmV0YWlsZXJzID0gbigpKQoKZGF0YXRhYmxlKHRvYmFjY29fcXVlZW5zX3N0YXRzKQpgYGAKCiMjIyBQbG90CmBgYHtyIGVjaG89RkFMU0V9CmdncGxvdChkYXRhID0gdG9iYWNjb19xdWVlbnNfc3RhdHMsCiAgICAgICBhZXMoeCA9IHJlb3JkZXIoQWRkcmVzcy5aSVAsIGFjdGl2ZV90b2JhY2NvX3JldGFpbGVycyksICMgUmVvcmRlcihpbnRlbmRlZCBjb2x1bW4gZm9yIHgsIGJ5IHRoaXMgdmFsdWUpCiAgICAgICAgICAgeSA9IGFjdGl2ZV90b2JhY2NvX3JldGFpbGVycywKICAgICAgICAgICBmaWxsID0gYWN0aXZlX3RvYmFjY29fcmV0YWlsZXJzKSkgKwogIGdlb21fY29sKCkgKwogIHNjYWxlX3lfY29udGludW91cyhsYWJlbHMgPSBzY2FsZXM6OmxhYmVsX2NvbW1hKCkpICsKICBzY2FsZV9maWxsX2dyYWRpZW50KGxhYmVscyA9IHNjYWxlczo6bGFiZWxfY29tbWEoKSwgbG93ID0gImdyZXkiLCBoaWdoID0gImJsdWUiKSArCiAgdGhlbWUoYXhpcy50ZXh0Lng9ZWxlbWVudF90ZXh0KGFuZ2xlID0gOTAsIGhqdXN0ID0gMSwgdmp1c3QgPSAwLjUpLAogICAgICAgIHBsb3QudGl0bGUgPSBlbGVtZW50X3RleHQoaGp1c3QgPSAwLjUpKSArIAogIGxhYnMoeCA9ICJaSVAgQ29kZSAoUXVlZW5zKSIsCiAgICAgICB5ID0gIkFjdGl2ZSBUb2JhY2NvIFJldGFpbGVycyIsCiAgICAgICB0aXRsZSA9ICJBY3RpdmUgVG9iYWNjbyBSZXRhaWxlcnMgaW4gUXVlZW5zIHBlciBaSVAgQ29kZSIsCiAgICAgICBmaWxsID0gIkFjdGl2ZSBUb2JhY2NvIFJldGFpbGVycyIpCmBgYAoKKioqCgojIENvbmNsdXNpb24KQmFzZWQgb24gdGhlIHN1bW1hcnkgc3RhdGlzdGljcyBhbmQgcGxvdCBhYm92ZSwgd2UgY2FuIHNlZSB0aGF0IF9fQ29yb25hIChaSVAgY29kZSAxMTM2OClfXyByYW5rcyB0aGUgX19zZWNvbmQgaGlnaGVzdF9fIGZvciB0aGUgdG90YWwgYW1vdW50IG9mIGFjdGl2ZSB0b2JhY2NvIHJldGFpbGVycyBhbW9uZ3N0IG90aGVyIG5laWdoYm91cmhvb2RzIGluIFF1ZWVucywgd2l0aCBhIHRvdGFsIG9mIDczIGFjdGl2ZSByZXRhaWxlcnMuCgoKCg==