Variable type: numeric
skim_variable | n_missing | complete_rate | mean | sd | p0 | p25 | p50 | p75 | p100 | hist |
---|---|---|---|---|---|---|---|---|---|---|
RunUp | 0 | 1 | 6.98 | 9.89 | -11.6 | 2.55 | 5.2 | 9.95 | 70.2 | ▇▇▁▁▁ |
MATH 221
April 27, 2024
There are 95 rows and 2 columns. The data source1 is used to create our data that is stored in our pins table. You can access this pin from a connection to posit.byui.edu using hathawayj/dasl_waste_run_up
.
This data is available to all.
Variable type: numeric
skim_variable | n_missing | complete_rate | mean | sd | p0 | p25 | p50 | p75 | p100 | hist |
---|---|---|---|---|---|---|---|---|---|---|
RunUp | 0 | 1 | 6.98 | 9.89 | -11.6 | 2.55 | 5.2 | 9.95 | 70.2 | ▇▇▁▁▁ |
Variable type: character
skim_variable | n_missing | complete_rate | min | max | empty | n_unique | whitespace |
---|---|---|---|---|---|---|---|
Source | 0 | 1 | 7 | 7 | 0 | 5 | 0 |
pacman::p_load(tidyverse, pins, connectapi, googledrive, readxl)
# Download the file from google drive (because the github copy only had one column)
sdrive <- shared_drive_find("byuids_data") # This will ask for authentication.
google_file <- drive_ls(sdrive) |>
filter(stringr::str_detect(name, "DASL-WasteRunUp"))
tempf <- tempfile()
drive_download(google_file, tempf)
dasl_waste_run_up <- read_excel(tempf)
# Publish the data to the server with Bro. Hathaway as the owner.
board <- board_connect()
pin_write(board, dasl_waste_run_up, type = "parquet", access_type = "all")
pin_name <- "dasl_waste_run_up"
meta <- pin_meta(board, paste0("hathawayj/", pin_name))
client <- connect()
my_app <- content_item(client, meta$local$content_id)
set_vanity_url(my_app, paste0("data/", pin_name))
This data is available to all.
Direct Download: dasl_waste_run_up.parquet
For public data, any user can connect and read the data using pins::board_connect_url()
in R.
library(pins)
url_data <- "https://posit.byui.edu/data/dasl_waste_run_up/"
board_url <- board_connect_url(c("dat" = url_data))
dat <- pin_read(board_url, "dat")
Use this custom function in Python to have the data in a Pandas DataFrame.
import pandas as pd
import requests
from io import BytesIO
def read_url_pin(name):
url = "https://posit.byui.edu/data/" + name + "/" + name + ".parquet"
response = requests.get(url)
if response.status_code == 200:
parquet_content = BytesIO(response.content)
pandas_dataframe = pd.read_parquet(parquet_content)
return pandas_dataframe
else:
print(f"Failed to retrieve data. Status code: {response.status_code}")
return None
# Example usage:
pandas_df = read_url_pin("dasl_waste_run_up")
Our connect server is https://posit.byui.edu which you assign to your CONNECT_SERVER
environment variable. You must create an API key and store it in your environment under CONNECT_API_KEY
.
Read more about environment variables and the pins package to understand how these environment variables are stored and accessed in R and Python with pins.