问题标签 [foldleft]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - Scala:无法匹配模式
我是 Scala 的新手,我正在尝试在 Scala 中执行 = 以下代码:
定义类 FoldExp
定义对象 Foo
foldList: List[FoldExp] = List(FoldExp(Hugh,Jass,25,male), FoldExp(Biggus, Dickus,43,male), FoldExp(Incontinentia,Buttocks,37,female))
上面的代码块引发了以下错误:
我想根据年龄将列表中的人分类到他们各自的乐队中。但是我无法使用模式匹配来实现这一点。谁能告诉我为什么上述方法是错误的,以及实现我的目标要遵循的方法是什么。任何为上述问题寻找解决方案的尝试都是值得赞赏的。提前致谢。
functional-programming - 如何在没有辅助方法的情况下实现这个 foldl0 函数?
我有以下代码:
foldl0
我知道通过定义辅助方法iter(list, func, part_result)
并将结果存储为参数很容易实现具有迭代逻辑的递归。但是如何在foldl0
没有辅助方法的情况下实现,就像foldr0
's implementation?
注意:为了方便起见,我用 Javascript 编写了这个问题。请用car
和解决cdr
,谢谢。
string - Scala - 从单个字符串中删除字符串列表/映射中的所有元素
在 URL 包含来自其他系统的源引用的内部网站上工作。这是业务需求,无法更改。即“ http://localhost:9000/source.address.com/7808/project/repo ”“ http://localhost:9000/build.address.com/17808/project/repo ”
我需要使用特征从“项目/回购”字符串/变量中删除这些字符串,以便可以从多个服务中本地使用。我还希望能够将更多源添加到此列表(已存在)而不修改方法。
“def normalizePath”是服务访问的方法,到目前为止2次非理想但合理的尝试。卡在使用 foldLeft 上,我希望得到一些帮助或更简单的方法来完成所描述的操作。下面的代码示例。
第一次尝试使用 if-else(不理想,因为需要在行下添加更多 if/else 语句并且比模式匹配更易读)
和第二次尝试(不理想,因为可能会添加更多模式并且它生成比 if/else 更多的字节码)
最后一次尝试是使用地址列表(在其他地方已经存在,但在此处定义为 MWE)从路径字符串中删除出现,但它不起作用:
感谢您对此的任何帮助!
haskell - 使用 Foldl 对列表求和
我是 Haskell 的新手,我正在尝试使用 MacLaurin 的系列在 Haskell 上使用 foldl 来实现正弦逼近。我已经生成了列表,现在我正在尝试使用 fold 获得总和。
这是我的代码。我知道我在 sin 函数上做错了,但我不知道该怎么做。我也必须通过 x。如果 sin 接收 x 作为输入,list 将使用相同的 x 值。
已解决:正确的解决方案:
scala - Scala FoldLeft 函数
我有以下示例数据:
现在我需要计算具有 maximm TMAX 的最热的一天,现在我已经用 reduceBy 计算了它,但无法弄清楚如何使用 foldBy 下面是代码:
我无法弄清楚如何在其中使用 foldBy 函数。
scala - 用 foldleft scala 分组
我在输入中有以下列表:
我想在scala中使用groupBy和foldleft(只有一个函数)编写一个函数,以便为具有相同标题的行(这里的第一列)总结第三和第四列,想要的输出是:
}
亲切的问候
haskell - Haskell:foldl 函数应用为中缀函数?
我赋予的功能是否以foldl
中缀方式应用?
例子
所以更一般地说:
应用为:
我知道它是递归的,但我可以这样想吗?
scala - 使用 scala foldLeft 添加来自唯一数据结构的值
我正在尝试通过制作计算器来学习 Scala。在这个计算器中,我特别有两种方法可以进行解析和计算。我还有两个处理数据的案例类。
“唯一”数据结构只是由一个 operationIndex 组成,它只是两个数字和对它们执行的运算符。我创建了一个名为 numberPair 的案例类,它只包含两个数字,因为我觉得这种方式更容易理解。如果我在这方面错了,请纠正我,如果我应该只使用正常的一对。
scala 编译器抱怨该行
parser(data(element).numbers.number1, data(element).numbers.number2, data(element).operator)
返回 Calculator.OperationIndex。我不明白,它应该返回函数签名指定的双精度值。它还说它需要一个 Int 超过一个 double 。我已经阅读了 scala 文档,但我仍然不确定我哪里出错了。
scala - Spark Scala FoldLeft 在集群中运行时导致 StackOverflow
我使用以下代码来重新塑造数据框,使用它的行进行此重塑。
数据框包含产品更改其 ID 的日期,但为了将其与包含交易的大量其他数据框连接起来,我需要一个定义有效 ID 范围的新列。
例如,如果产品 A 在 01/01 生效日更改为产品 B,然后更改为产品 C 在 03/01 生效,我将需要在同一行中的开始日期和结束日期,以便我可以将它与巨大的按产品有效为 B(或 C)的日期过滤交易数据框,因此我可以正确地将产品重命名为其有效的真实 ID。
另一条信息,df_MPC 大约 800 行,不会增长太多。
所以我正在尝试的方法(在开发环境中运行时有效)是 foldleft。
MPC 数据框的总结版本为:
客观的:
(OriginalProd 列是与事务数据框的最终连接所必需的)
导致stackoverflow的代码如下:
此代码将源数据帧(上面提供的示例)转换为目标数据帧(上面的示例)。
它通过以排序方式(按日期)迭代其所有 800 行并针对其每一行来做到这一点:
- 更改与给定行匹配的所有产品的有效日期
- 如果我们找到中间产品,请更新原始产品 ID。例如,如果我们有一个产品从 ID“A”交换到“B”,然后从“B”交换到“C”,我们将需要具有原始产品 ID 的列(在本例中为“A”)因为能够将我们的结果与仅包含产品 ID“A”的原始交易表连接起来。
并且在集群中使用这段代码时抛出的错误:
如何使此代码在集群中以与在本地正常工作相同的方式工作?谢谢!