Some assorted MATLAB functions
Here I collect some old functions I wrote for MATLAB and still find useful at times.
For all the functions below, the licensing is simple: do whatever you want with the code, but don’t blame me if anything goes wrong.
Statistics
percentile — Percentile value of input array. Missing from the MATLAB toolbox (the
statistics toolbox has prctile). I copied median and modified it a bit, so it’s mostly code by The MathWorks.
student_t — Returns the right-critical value of the Student distribution for
a=0.025 and any number of degrees of freedom. Use this to compute the 95% confidence interval of the mean of a set of
samples, as done by confidenceinterval (below).
confidenceinterval — Returns the right-critical value for the 95%
confidence interval of the location of the mean of a set of samples (requires student_t, above).
Plotting
prettyplot — Prettier linear plot. Works just like plot, but avoids the line and
markers being on top of each other. Instead, the line joins the markers without touching them.
boxplot — Elegant box plot, looks a lot better than what MATLAB’s own boxplot
command produces (in its statistics toolbox). Plots grouped data as a box with whiskers, indicating min, 25th
percentile, median, 75th percentile, and max. Optionally plots outliers (points outside of 1.5 IQR) as dots.
movelegend — Moves the legend of an axes to one of the positions defined in
legend. legend doesn’t allow to move the legend once it’s created, so here you have. [This is really old, I don’t know
if it still works with the new graphics engine.]
Other
np2 — Next higher power of 2. np2 is the same as nextpow2, except that it can work on
arrays.
cell2str — Convert cell array into evaluable string. This one is missing in the
MATLAB toolbox. Similar to mat2str. It should be possible to rename this as @cell/mat2str.m.
mvfield — Rename structure field. This one is also missing in the MATLAB toolbox.
Goes well together with rmfield.