Totally relevant! As you can tell from the many notebooks about these topics, we are definitely interested in bringing as many analytical tools as possible to Observable.
Re: hclust, I see that this notebook includes it from bundle.run: 27 - Clustermap / Theo Dedeken / Observable
The list could also include simple-statistics, reorder.js, various flavors of UMAP (like druid.js), etc.
We’ve been trying to support existing efforts, to demonstrate how they work, to develop some code for individual algorithms for which there was no implementation (e.g. sliced optimal transport), and to make existing libs consumable in notebooks.
However at this point in time I don’t think observable has plans to develop a statistics library that would be a one-stop shop.
If anything, I’d be interested in collaborating on a notebook that lists all the existing methods that are (more or less well) supported, and those that are missing, and could be used as a map both for people who want to do the analysis, and for developers who want to expand the possibilities.
Ok. I opened a notebook shared with Observable ambassadors. Do you see it? Should I let it be private or should I make it public right now?
absolutely agree with everything you said!
We had a longer discussion about this (stats/data science in Observable in general) in this thread: Observable for research - (advanced) statistics
Since then, I’ve been trying to port a few R/python functions to JS, which are also based on mljs:
R’s lm, vif, View, summary, stargazer: Linear models in Observable notebooks / Christoph Pahmeyer / Observable
R’s cor, var(i), corrplot, plot, hist: Correlation, Variance And Covariance (Matrices) / Christoph Pahmeyer / Observable
Seaborns (python) pairplot: Plotting pairwise relationships in a dataset / Christoph Pahmeyer / Observable
Just as you said before, these lack a solid/fast WASM implementation in the background. So they will become slow on large datasets! Anyways, I’ill add those to the notebook later!
Especially for the summary (Summary Table / Observable / Observable), and obviously the plot functions (Shorthand / Observable Plot / Observable / Observable) Observable has much better alternatives though
As we know all too well, the human mind is easily deceived by a pretty picture. Don’t get me wrong, I love the elegant graphics that Observable facilitates, but responsible data analysis must also include statistical support for the conclusions being drawn.
A while back I started this notebook which might contain some useful resources: