[英]Manual implementation of Standard Deviation with NSExpression
看起來 iOS 上的Core Data
的標准偏差方法不存在,所以我試圖手動完成。
我剛從NSExpression
開始,所以我正在努力解決這個問題:
let numbers = [4, -2]
let numbersExpr = NSExpression(forConstantValue: numbers)
let avgExpr = NSExpression(forFunction: "average:", arguments: [numbersExpr])
let subExpr = NSExpression(forFunction: "from:subtract:", arguments: [numbersExpr, avgExpr])
let v = subExpr.expressionValue(with: nil, context: nil)
在我的subExpr
,我試圖將平均值減去我的 numbers 數組的所有值,但是在嘗試評估最后一行的 v 時它會崩潰。
如何用NSExpressions
做到這一點?
崩潰的是subExpr
:
let subExpr = NSExpression(forFunction: "from:subtract:", arguments: [numbersExpr, avgExpr])
內置的from:subtract:
期望它的 arguments 是“兩個代表數字的NSExpression
對象”,但你的第一個參數是一個數組。
NSExpression
的內置函數並不是真正為矢量數學設計的。 使用init(block:arguments:)
可能會獲得您的目標。 但是,您將無法將其與 Core Data 一起使用(您的問題中未提及,但您使用了標簽)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.