gpt4 book ai didi

kotlin - 在 Kotlin 中比较 2 个列表

转载 作者:行者123 更新时间:2023-12-01 07:09:19 29 4
gpt4 key购买 nike

我有这两个列表:

val forecast = listOf(30, 21, 29, 31, 40, 48, 53, 47, 37, 39, 31, 29)
val actual = listOf(27, 31, 27, 26, 21, 13, 21, 18, 33, 35, 40, 36)

并且需要计算每个月的预测误差,即 forecast-actual ,所以我尝试了以下方法:
var errors: MutableList<Double> = mutableListOf<Double>()

actual
.forEachIndexed { index, d -> forecast[index] - d}
.let { i -> errors.add(i) }

但是没有用,如 i源自 forEachIndexedUnit不是 Double :(

最佳答案

与 forEach 相比,您想要做更多的 map 。我会执行以下操作,然后将其放入您要查找的任何类型(如果您确实想要一个可变的 double 列表):

val errors = forecast.zip(actual).map { it.first - it.second }

将列表压缩在一起为您提供一个元组列表,其中第一个值来自第一个列表(预测),第二个值来自第二个列表(实际)。然后您可以将该列表映射到每个元组中的值之间的差异。 Map 返回一个新列表,其中包含应用于每个项目的更改,而 forEach 对每个项目执行该功能但不生成新列表。

或者更精简的方式:
val errors = forecast.zip(actual){f,a -> f-a)

关于kotlin - 在 Kotlin 中比较 2 个列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48955736/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com