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
.