I'll go ahead and assume that as you said, you care about stability, not about the actual peak-to-peak values (which really are just
max()), because these are just noisy and not a good estimator, especially if your signal is oversampled significantly (which it probably is).
So, let's talk about how we can understand "oscillation amplitude stability" in frequency domain:
If the sine wave's amplitude changes, then it's not an unmodulated sine wave anymore .
This means it has no longer a pure line spectrum.
So, the solution is quite straightforward: do a frequency analysis, with high resolution. Determine the bandwidth of your signal.
This exact measure is called linewidth (for the line spectrum reason mentioned above) in lasers! It's the main measure for "clean-ness" of the oscillation.
Origin of the term line width: spectrum of a chromatic emitter. The lines that are wider happen because the oscillating things (in this case, the energy levels between which electrons are exchanged, leading to photon emissions) are less well-defined, whereas the narrow lines happen because the energy of an oscillation is very well-defined. Source: Wikimedia, "Emission Lines", Author: stkl.
as an aside:
saved a csv file on my flash drive.
CSV is kind of the worst-case file format here. If you have any better format, you'd get less rounding errors, and smaller file size. Rounding errors also lead to a broadening of your bandwidth.
on matlab or excel
Excel is really not the tool for signal analysis! I've seen engineer fight with excel because they were afraid to start matlab or python, and then regret it very much once someone came around that did a better analysis with less error in much shorter time.
In Matlab, you'd load your data (using the appropriate file reader for your specific file format / CSV dialect), and then you'd just do a spectral estimation on your data. In a simple case, that might just be
plot(abs(fft(data))), but that's typically not a great way to go about this, because the accuracy is severely limited when your sine's period is not exactly a factor of
length(data) (otherwise, the mathematical effect called leakage happens).
pspectrum might be your friend!
Personally, I'd go for something more involved: I know there's exactly one sine in my spectrum. I know the frequency only roughly, and I don't want to risk leakage as described above. So, I first estimate the fundamental frequency as precisely as possible, and then I look for the the bandwidth around that main frequency that contains 90% of the overall signal power. If that bandwidth is high, your tone is instable. If the bandwidth is low, it's very stable.