I hereby claim:
- I am gvdr on github.
- I am gvdr (https://keybase.io/gvdr) on keybase.
- I have a public key ASBW8zEL_gVtBeSjRwk9_S8_4Xi1x1vlzFwdUc0JDHZDSwo
To claim this, I am signing this object:
# This file is machine-generated - editing it directly is not advised | |
julia_version = "1.9.4" | |
manifest_format = "2.0" | |
project_hash = "854267dae88bd3bbd6557a02d62085af68e79521" | |
[[deps.AbstractFFTs]] | |
deps = ["LinearAlgebra"] | |
git-tree-sha1 = "d92ad398961a3ed262d8bf04a1a2b8340f915fef" | |
uuid = "621f4979-c628-5d54-868e-fcf4e3e8185c" |
### A Pluto.jl notebook ### | |
# v0.12.4 | |
using Markdown | |
using InteractiveUtils | |
# This Pluto notebook uses @bind for interactivity. When running this notebook outside of Pluto, the following 'mock version' of @bind gives bound variables a default value (instead of an error). | |
macro bind(def, element) | |
quote | |
local el = $(esc(element)) |
library(tidyverse) | |
library(readxl) | |
library(janitor) | |
library(ggridges) | |
# let's download the table | |
download.file("https://www.istat.it/it/files//2020/03/Tavola-sintetica-decessi.xlsx", | |
"Tavola-sintetica-decessi.xlsx") | |
# we prefer to work with clean names |
# I'd live to use the usual mathematical notations to do summatories and productories | |
# turns out, in Julia it's pretty easy as long as we keep things simple | |
# as we can just embellish the already defined sum() and prod() function | |
# only tweak is choosing a negative step if we want to sum from i = N to M with N>M | |
# for the summatory: | |
function ∑(f::T;from::Int, to::Int) where T <: Function | |
step_sum = from > to ? 1 : -1 | |
sum(safer(f), range(from, stop = to, step = step_sum)) | |
end |
using StatsBase, Random, Distributions | |
using Plots | |
# parameters for the simulations | |
blocks = 70000; # Number of ticket blocks | |
tickets = 7000000; # Number of tickets | |
draws = 200; # Number of prizes | |
K = 100000; # Number of lotteries to simulate at each replication | |
R = 100; # Number of replications |
I hereby claim:
To claim this, I am signing this object:
A quick exploratory analysis of the dataset collected by BEtti and Manica (Betti L, Manica A (2018) Human variation in the shape of the birth canal is significant and geographically structured. Proceedings of the Royal Society B 285(1889): 20181807.)
We perform classic multidimensional scaling and contrast it with the aggregate means by Region and Population.
Let's load the tidyverse framework to wrangle data and plot it
Data Wrangling Stack | |
-------------------- | |
In this course we will use: | |
- R as default programming language | |
- Tidyverse as the R dialect of choice | |
- The shell commands (bash or zsh), through the terminal |
# install.packages("tidyverse") # If not yet installed, run this | |
library(tidyverse) # Everything will be don in a tidyverse fashion | |
# This is the kind of dataframe I think Roberta is dealing with. | |
# Vitd is an integer | |
# Age is a numeric | |
# We first need to cut the numeric age into a factor. | |
roberta_df <- tibble( | |
Age = as.integer(runif(100,10,100)), # Age, as an integer | |
Vitd = as.integer(runif(100,80,140)) # Vitd, as an integer |
#' let's have a matrix | |
n <- 2 | |
m <- 15 | |
my_mat <- matrix(runif(n),m,n) | |
#' let's name those rows, they will be our observations | |
row.names(my_mat) <- letters[1:m] |