You show a function that does it already, although at a quick glance, it appears to compute the standard deviation incorrectly. Is your question how to do it correctly?
First, I would NOT use std as the name of a variable. One day you will want to use the true function std, and you won't be able to, and then you will come back crying about a strange bug. Get used to not naming variables like that.
Some parts of your code were ok. But you already know how to use sum. So use it!
x = x(~isnan(x));
n = length(x);
avg = sum(x)/n;
S = sqrt(sum((x - avg).^2/(n-1)));
disp(['mean = ',num2str(avg),' and standard deviation = ',num2str(S)])