问题标签 [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.

0 投票
1 回答
279 浏览

scala - select 和 withcolumn 都不适用于 foldleft

试图从嵌套模式中分解给定的列。我正在尝试通过数据框上的 fold-left 来实现这一点。

这里我只处理了两个场景

  1. 如果列类型是结构,那么我正在尝试通过选择子句获取
  2. 如果列类型是数组,那么我试图通过使用 withColumn 然后选择子句来分解数据

这是我的架构:

下面是代码片段:

但是当我尝试使用以下语句时,它会按预期工作。我用 foldleft 写的一样。

我在上述方法中是否犯了任何错误,或者我们可以以更好的方式实现这一点。

我正在使用 spark2.30 版本和 scala 2.11 版本

编辑 :

请找到以下示例数据:

我使用的临时解决方案如下:

0 投票
3 回答
477 浏览

ocaml - 如何每次折叠折叠列表的 x 个元素

因此,假设我们有一些如下列表:[1; 2; 3; 4; 5; 6],并且假设我想在每次调用函数时折叠 2 个元素。

因此,我将按顺序在(1, 2)(3, 4)和上应用该函数。(5, 6)

这是我尝试这样做的功能:

这有点工作;但是,这样做的问题是在函数中使用这些元素并不容易。

我首选的实现会以某种方式使用元组或数组来使元素访问更容易。


这是一个更好的输入/输出示例(使用utop语法)。在这种情况下,我总结了每一对元素。

在这里,如果列表的长度不能被整除,则剩余的元素将n被放入元组的第二个元素中。

(我不介意这个余数是否在解决方案中反转。)

0 投票
1 回答
110 浏览

arrays - 如何在scala中另一个列表的每个元素的末尾添加列表的每个元素?

我想在另一个列表的每个元素的末尾添加一个列表的元素。

我有 :

我想得到以下结果(Values_tmp 的第一个元素与 Cars_tmp 的第一个元素连接,Values_tmp 的第二个元素与 Cars_tmp 的第二个元素连接...),如下所示:

我试图这样做:

我有以下错误:

比你的帮助。

0 投票
2 回答
66 浏览

haskell - 在haskell中使用foldl时不需要参数?

我不明白的是如何在haskell中以这种方式使用foldl。我不明白参数(在本例中为列表)是如何隐式传递的:

或者

但我真的不明白第一个例子。所以基本上我想知道如何在haskell中对某些东西进行评估?

0 投票
1 回答
146 浏览

racket - 在球拍中向左折叠

我有一个关于尝试在 Racket 中定义递归定义的 foldl 函数的问题。

这是我的方法:

不幸的是,当我这样做时,我得到了错误:

我无法弄清楚为什么会弹出此消息。有人能帮我吗?

0 投票
1 回答
86 浏览

list - 如何计算元素大于其后继元素的次数?

我目前正在尝试解决以下练习:

给定一个Ints 列表,计算一个元素大于其后元素的次数。该练习迫使我不要使用显式递归。

以下是给出的一些示例输出function :: [Int] -> Int

我想以某种方式使用,foldl但经过多次尝试和不可行的想法,我不得不放弃。

如何在不使用递归的情况下计算元素大于其后继元素的次数?

0 投票
1 回答
107 浏览

scala - 来自整数和字符串列的 Scala 新 Map 列

问题陈述:

我有一个包含四列的数据框:service (String)、show (String)、country_1 (Integer) 和 country_2 (Integer)。我的目标是生成一个仅包含两列的数据框:服务(字符串)和信息(地图 [整数,列表 [字符串]])

其中映射可以包含多个键值对记录,例如每个流服务:

需要注意的重要一点是,将来可以添加更多国家/地区,例如输入数据框中的另外几列,例如“country_3”、“country_4”等。解决方案代码的目标也是希望能够解决这些问题而不仅仅是像我在下面尝试的解决方案中所做的那样对选定的列进行硬编码,如果这有意义的话。

输入数据框:

架构:

数据框:

输出数据框:

架构:

数据框:

我已经尝试过的

虽然我已经成功地生成了我想要的输出并粘贴了代码片段,但我不想依赖使用非常基本的 SQL 类型的命令,因为我认为它对于大型数据集的快速计算并不总是最佳的,此外,我不想依赖我在映射时手动选择确切名称的国家列的方法,因为在以后可以添加更多国家列的意义上,这总是会发生变化。

有没有更好的方法来利用 udfs、foldLeft 等类型的代码或其他任何有助于优化的方法,也有助于代码更简洁而不是混乱?

0 投票
2 回答
147 浏览

scala - 如何将尾递归方法转换为更类似于 Scala 的函数?

在我的代码中,我经常需要通过对内部模型执行操作来处理列表。对于每个处理过的元素,返回模型,然后将“新”模型用于列表的下一个元素。

通常,我通过使用尾递归方法来实现这一点:

由于我不断重复这种模式,我正在寻找使其更简洁和更实用的方法(即 Scala 方式)。我已经调查过foldLeft,但无法使用Either

foldLeft合适的替代品吗?我怎样才能让它工作?

0 投票
0 回答
38 浏览

scala - scala中折叠左列的更漂亮的方式?

我有一个 SQL,我正在尝试使用数据帧在 spark scala 中编码

下面是我试图让它看起来很漂亮但无法达到预期结果的代码

我收到以下错误

0 投票
1 回答
134 浏览

scala - Spark Scala FoldLeft 性能缓慢

您好我正在尝试在具有 280 列的数据框中进行 scdtype2 更新。

单独执行这需要 8 分钟。有什么办法可以优化吗?