  We study the sample complexity of the classical shadows task: what is the
fewest number of copies of an unknown state you need to measure to predict
expected values with respect to some class of observables? Large joint
measurements are likely required in order to minimize sample complexity, but
previous joint measurement protocols only work when the unknown state is pure.
We present the first joint measurement protocol for classical shadows whose
sample complexity scales with the rank of the unknown state. In particular we
prove $\mathcal O(\sqrt{rB}/\epsilon^2)$ samples suffice, where $r$ is the rank
of the state, $B$ is a bound on the squared Frobenius norm of the observables,
and $\epsilon$ is the target accuracy. In the low-rank regime, this is a nearly
quadratic advantage over traditional approaches that use single-copy
measurements.
  We present several intermediate results that may be of independent interest:
a solution to a new formulation of classical shadows that captures functions of
non-identical input states; a generalization of a ``nice'' Schur basis used for
optimal qubit purification and quantum majority vote; and a measurement
strategy that allows us to use local symmetries in the Schur basis to avoid
intractable Weingarten calculations in the analysis.
