Public
Edited
Feb 1, 2023
Insert cell
Insert cell
datasample1000.csv
Type Table, then Shift-Enter. Ctrl-space for more options.

Insert cell
formula = ["/",["get","men_pauv"],["get","men"]]
Insert cell
formula_to_lambda = function(formula){
// replace get
formula = formula.map( fp => fp[0]=="get" ? r=> r[fp[1]] : fp)
//formula = formula.map( fp => fp[0]=="/" ? r => r)
return formula
}
Insert cell
ff=formula_to_lambda(formula)[1]
Insert cell
ff(datasample1000[1])
Insert cell
require("d3@6")
Insert cell
quantiles_ratio = function(numerator,denominator,year){
let q=[]
if(denominator!="area"){
q = [0.000,0.125,0.250,0.375,0.500,0.625,0.750,0.875,1.000].map(q => d3.quantile(datasample1000,q, r=> r[`${numerator}_${year}`]/r[`${denominator}_${year}`]))
}else{
q = [0.000,0.125,0.250,0.375,0.500,0.625,0.750,0.875,1.000].map(q => d3.quantile(datasample1000,q, r=> r[`${numerator}_${year}`]/(200*200)*100000))
}
return q;
}

Insert cell
quantiles_ratio_evol = function(numerator,denominator){
return [0,0.25,0.5,0.75,1].map(q => d3.quantile(datasample1000,q, r => r[`${numerator}_2017`]/r[`${denominator}_2017`]-r[`${numerator}_2015`]/r[`${denominator}_2015`]))
}

Insert cell
quantiles_ratio_evol("men_pauv","men")
Insert cell
quantiles_ratio("ind","area","2015")
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more