2017-04-06 1 views
-1

J'ai une question que j'ai été incapable de trouver en recherchant sur Google..Compute for Standard Deviation

J'ai un datatable dont la taille fluctuera en fonction des données brutes que nous avons pour une étude clinique.

 public double calculateInterCv() 
    { 
     object DeviationCalculated = DataToCalculate.Compute("StDev([Mean])", ""); 
     object grandMeanCalculated = DataToCalculate.Compute("Avg([Mean])", ""); 
     double deviation = Convert.ToDouble(DeviationCalculated); 
     double grandMean = Convert.ToDouble(grandMeanCalculated); 
     double interCv = (deviation/grandMean) * 100; 

     return interCv; 
    } 

Comme vous pouvez le voir, je suis en utilisant le .Compute (« ECARTYPE ([]) ») pour calculer toutes les entrées de la table moyenne. J'ai fait une comparaison des données et il semble éteint. Est-ce que quelqu'un sait si le stDev utilise le n-1 pour trouver l'écart-type ou s'il est juste n?

Répondre

0

Je l'ai compris moi-même. Pour ceux qui étaient intéressés, l'écart-type n'affichait pas la valeur correcte à la ligne 1. Le tableau ci-dessous nous donne les valeurs correctes.

public double CalculateStandardDeviation() 
    { 
     int count = DataToCalculate.Count; 

     double average = DataToCalculate.Average(); 
     double sum = DataToCalculate.Sum(d => Math.Pow(d - average, 2)); 
     double deviation = Math.Sqrt(sum/(count-1)); 

     return deviation; 
    }