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 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告