Примера: У меня есть следующий набор данных:Ядра и группировка данных
date eur usd aud
------------------------------
2015-01-01 0.5 1.0 1.5
2015-01-02 0.6 1.1 1.6
2015-01-03 0.4 1.0 1.3
....
2015-02-01 0.5 1.0 1.5
2015-02-02 0.6 1.1 1.6
2015-02-03 0.4 1.0 1.3
Моя цель состоит, чтобы вычислить среднее соотношение евро/доллар EUD/ауд каждую неделю года. Я ожидаю, что следующий результат:
avg eur/usd:
------------------
Week 1 0.5
Week 2 0.54
Week 3 0.4
Для расчета EUR/USD рацион я добавил NSExpression
. Вот код:
let usdExpression = NSExpression(forKeyPath: "usd")
let eurExpression = NSExpression(forKeyPath: "eur")
let ratioExpression = NSExpression(forFunction: "divide:by:", arguments: [usdExpression, eurExpression])
let avgRatioExpression = NSExpression(forFunction: "average:", arguments: [ratioExpression])
Я добавляю выражение для запроса выборки. Теперь я собираюсь сгруппировать по неделям. Я не храню неделю в базе данных (у меня там только дата). Я добавил transient property
к моей модели и реализована логика есть:
var weekOfYear {
var numberOfWeek: Int?
...
return "Week \(numberOfWeek)"
}
Но я не в группе этим свойством. Так можно ли получить групповые значения? Если нет, похоже, мои выражения бесполезны.