Swift 编程计算标准差


在本文中,我们将学习如何编写一个 Swift 程序来计算标准差。标准差是一种衡量指标,它表示与平均值存在多少差异,或者我们可以说它用于计算值与平均值的差异程度。

$$\mathrm{\sigma\:=\:\sqrt{{\frac{1}{N}}\sum_{i=1}^N\:(X_i-\mu)^2}}$$

标准差的数学公式为:

  • σ = 标准差

  • N = 元素总数

  • Xi = 第 i 个元素

  • \mu = 给定元素的平均值

因此,在本文中,我们使用上述数学公式计算给定数组的标准差。例如:

Arr = [2, 4, 5, 6, 7, 2]
Standard deviation = 1.9148542155126762

算法

  • 步骤 1 − 创建一个函数来查找标准差。

  • 步骤 2 − 在此函数中,使用 count 属性查找数组的大小。

  • 步骤 3 − 使用 for 循环遍历数组的每个元素并找到它们的总和。

  • 步骤 4 − 通过将数组元素的总和除以数组的大小来计算平均值。

  • 步骤 5 − 再次使用 for 循环,借助平均值和内置函数(如 pow() 和 sqrt())计算标准差。

  • 步骤 6 − 创建一个整数类型的数组。

  • 步骤 7 − 调用函数并将创建的数组作为参数传递给它以查找标准差。

  • 步骤 8 − 打印输出。

示例

以下 Swift 程序用于计算标准差。

import Foundation
import Glibc

// Function to calculate standard deviation
func standardDeviation(seq:[Int]){
   let size = seq.count
   var sum = 0
   var SD = 0.0
   var S = 0.0
   var resultSD = 0.0
   
   // Calculating the mean
   for x in 0..<size{
      sum += seq[x]
   }
   let meanValue = sum/size
   
   // Calculating standard deviation
   for y in 0..<size{
      SD += pow(Double(seq[y] - meanValue), 2)
   }
   S = SD/Double(size)
   resultSD = sqrt(S)
   
   print("Standard deviation is:", resultSD)
}

// Creating an array of integer type
var Myarray = [34, 5, 89, 3, 2, 11, 45, 6, 2]

print("Array is:", Myarray)

// Calling the function
standardDeviation(seq:Myarray)

输出

Array is: [34, 5, 89, 3, 2, 11, 45, 6, 2]
Standard deviation is: 27.880698221768647

在上面的代码中,我们有一个整数类型的数组。现在,我们创建一个函数来计算给定数组的标准差。因此,对于标准差,我们首先使用 meanValue = sum/size 计算给定元素的平均值,其中 sum 是所有数组元素的总和,size 是数组中存在的元素总数。之后,我们使用平均值和内置函数(如 pow() 和 sqrt())找到标准差。

结论

因此,这就是我们如何使用数学公式找到给定数组的标准差。标准差公式是计算标准差最有效和最简单的方法。

更新于: 2022-12-29

561 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告