烫伤:如何在 groupBy('field){.size} 之后保留其他字段?

2023-11-25

所以我的输入数据有两个字段/列:id1和id2,我的代码如下:

TextLine(args("input"))
.read
.mapTo('line->('id1,'id2)) {line: String =>
    val fields = line.split("\t")
        (fields(0),fields(1))
}
.groupBy('id2){.size}
.write(Tsv(args("output")))

输出结果(我假设的)两个字段:id2 * size。我有点困惑是否可以保留也与 id2 分组的 id1 值并将其添加为另一个字段?


恐怕你不能以一种好的方式做到这一点。想想它在幕后是如何工作的——它将要计数的数据分割成块并将其发送到不同的进程,每个进程计算它的块,然后单个减速器最后将它们全部加起来。虽然每个进程都在计数,但它不知道整个大小,因此无法添加该字段。唯一的方法是在知道整个大小后返回并将其添加到数据中(即连接)。

如果每个组都适合内存(并且您可以配置内存),您可以:

Tsv(args("input"), ('id1, 'id2))
.groupBy('id2)(_.size.toList[(String, String)](('id1, 'id2) -> 'list))
.flatMapTo[(Iterable[(String, String)], Int), (String, String, Int)](('list, 'size) -> ('id1, 'id2, 'size)) {
  case (list, size) => list.map(record => (record._1, record._2, size))
}
.write(Tsv(args("output")))

但如果您的系统没有足够的内存,您将不得不使用昂贵的连接。

评论: 您可以使用 Tsv 代替 TextLine,然后使用 mapTo 和拆分。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

烫伤:如何在 groupBy('field){.size} 之后保留其他字段? 的相关文章

  • 使用特定主题标签时检索 Twitter 图片或视频

    我正在寻找为学校活动创建一个页面 基本上我想显示带有特定主题标签的推文的所有图片 如果可能的话还可以显示任何 youtube 或 vimeo 视频 我一直在查看 twitter API 但是我找不到起点 有人知道如何解决这个问题吗 我将不胜
  • Android Twitter 出现 oauth-signpost 错误授权失败(服务器回复 401)

    你好 我尝试将 Twitter 与 OAuth 结合使用 但收到此异常 授权失败 服务器回复 401 如果消费者密钥不正确或签名不匹配 则可能会发生这种情况 我正在使用这个示例http code google com p oauth sig
  • Twitter PHP API 应用程序访问直接消息权限?

    I have set my application permissions as read Write Direct Messages as shown in the figure 我已经保存了这些设置 But when i authent
  • 如何将 Twitter 小部件集成到 Reactjs 中?

    我想将 Twitter 小部件添加到 React 中 但我不知道从哪里开始或如何做 我对 React JS 很陌生 下面是 HTML 版本的代码 div class Twitter a class twitter timeline href
  • iOS >> ShareKit >> 选择所需的共享服务

    我已经在我的应用程序中实现了 ShareKit 我同意它的默认工作方式 但我希望控制可供用户选择的服务 更具体地说 我不想处理默认嵌入的所有服务 而只想处理 Facebook Twitter 和 Mail 我在 ShareKit 文件中的哪
  • 如何创建一个 Java 应用程序来读取 twitter feed?

    我想创建一个小型应用程序 仅使用应用程序级身份验证来访问 twitter api 来读取提要 我在网上阅读了很多文档 感到非常困惑 我了解 twitter api 需要 OAth 来授权任何应用程序从 twitter 获取或写入数据 为了获
  • 自动滚动的实时行情(如 Twitter 的“热门推文”)

    是否有一个好的 Javascript 库可以生成自动滚动列表 例如 Twitter 主页上的 热门推文 最好作为 jQuery 插件 它还应该支持 AJAX 功能 动态添加新列表项 由于我们对现有的解决方案并不满意 因此我们从头开始实施了一
  • 如何处理 R 包中具有 UTF-8 标记字符串的示例数据

    我想包括一个示例数据集 Twitter推文和metadata in an R我正在写的包 我使用下载了一个示例 data frameTwitter API并将其另存为 RData 与相应的 R数据描述文件 在我的包中 当我跑步时R CMD检
  • Twitter API:如何知道使用哪个应用程序来关注

    在电子邮件通知中我们可以看到类似的内容
  • Rails Beta 请求注册并提供社交媒体分享奖励

    我想构建一个简单的测试版请求注册页面 当用户尽可能多地共享应用程序的链接时 用户将获得更早的奖励 这样的解决方案可以在 特伦维网站 用户输入电子邮件 用户通过其独特的代码获得独特的链接 用户在每次注册时分享此链接 这对他来说是 1 管理方法
  • PHP - Twitter API (OAuth) 分页无法正常工作

    我已经集成了 Twitter API Twitter OAuth 来获取特定公司帐户的最新提要 下面是我到目前为止所做的代码 https tomelliott com php authenticating twitter feed time
  • Twitter 宝石搜索方法

    我的代码在这里 require twitter search Twitter Search new containing obama 它返回我们
  • WSGI 中的 httplib CannotSendRequest 错误

    我使用了两个不同的 python oauth 库和 Django 来通过 twitter 进行身份验证 该设置是在带有 WSGI 的 apache 上进行的 当我重新启动服务器时 大约 10 分钟一切正常 然后 httplib 似乎锁定了
  • Python Tweepy:Twitter Api 说 /users/lookup 不存在

    我正在制作一个研究应用程序 研究具有高权威的 Twitter 用户之间的交互 其中一部分是提取有关用户的信息 我使用 Tweepy for Python 构建了一个应用程序 过去 2 天我一直在提取用户信息 没有出现任何问题 突然提出这样的
  • 如何使用 XCode 在 iOS 应用程序中的推文中上传视频

    我是 iOS 开发新手 需要对我正在接管的 iOS 应用程序进行更改 以将视频添加到推文中 我当前的应用程序 UI 允许用户输入推文文本 但我将对其进行更改 以允许他们选择要与推文一起上传的视频 类似于 Twitter 应用程序的工作方式
  • 指向 Twitter 用户的 URL 链接(包含 ID,而不是姓名)

    我想要一个指向我的 Twitter 页面的链接 该页面使用我的 Twitter ID 而不是 Twitter 名称来引用它 这是因为我想将链接构建到应用程序中 并且该帐户的 Twitter 名称将来可能会更改 在解决这个问题一段时间后 找到
  • Twitter Streaming API 使用的官方编码?是UTF-8吗?

    Twitter 流 API 的官方编码是什么 根据我所看到的 我最好的猜测是 UTF 8 但我想避免做出假设 我见过的 Twitter 网站上唯一暗示他们使用什么作为官方编码的部分是在这里 Twitter 不想因为我们使用 UTF 8 或相
  • Twitter API - 获取关注者的关注者数量

    我试图获取特定帐户的每个关注者的关注者数量 目标是找到最有影响力的关注者 我在 Python 中使用 Tweepy 但遇到了 API 速率限制 在被切断之前我只能获取 5 个关注者的关注者数量 我正在查看的帐户大约有 2000 名关注者 有
  • 公共地理推文是否选择 Twitter 的 Search 或 Streaming API?

    我想开发一个 Android 应用程序 它将根据用户的 当前 指定 位置从 Twitter 公共时间线获取地理标记的推文 我将有一个刷新按钮 如果在特定时间可用 将获取更多推文 自定义大小最多 30 条 那么哪个API适合这种情况呢 搜索
  • Twitter\OAuth2\Python 入门

    我正在尝试使用 python 连接到 twitter 但我发现它真的很令人沮丧 我读到的所有内容都表明我需要一个消费者密钥 一个消费者秘密 一个访问密钥和一个访问秘密 例如 使用python OAUTH2访问OAUTH保护的资源 http

随机推荐

  • wcf 尝试设置跟踪以进行调试,而不是写入日志文件

    这是我的 web config 在 IIS7 上的应用程序中运行 WCF 服务 但没有任何内容写入指定文件 已向所有人授予对该文件的权限
  • 使用GCC编译C代码

    我在我的电脑上安装了 MinGWWindows8 笔记本电脑并尝试编译 C 代码文件 gcc test c o test exe 编译器没有给出警告或错误 但没有创建 test exe 我如何让编译器创建文件 test c My termi
  • 如何在 Django 1.4 中存储简单的日期时间

    我有一个格式为 2012 05 19 19 13 00 的简单日期和时间 需要使用 Django 1 4 及其时区感知功能来存储它 尽管无法知道日期最初位于哪个时区 但将其存储为 UTC 似乎是有意义的 但是 使用 pytz 等 我不确定如
  • 将整数格式化为十六进制字符串

    我需要从随机整数 0 255 列表中创建一串十六进制数字 每个十六进制数字应由两个字符表示 5 05 16 10 等 Example Input 0 1 2 3 127 200 255 Output 000102037fc8ff 我设法想出
  • 模拟按键 X 秒

    这是我用来在某个进程中模拟 Tab 键按下的代码 DllImport user32 dll static extern bool PostMessage IntPtr hWnd UInt32 Msg int wParam int lPara
  • 如何确定生成的进程何时准备就绪? (使用 CreateProcess() 和 FindWindow())

    这应该很简单 我正在创建一个程序 该程序使用 win32 生成一个进程CreateProcess 功能 加载此进程后 我使用以下命令找到它的窗口FindWindow并使用它发送消息SendMessage 问题是 我如何知道该窗口何时准备好接
  • VSCode 终端建议不会自动完成

    VSCode 的 PowerShell 终端现在以灰色显示您可能想要输入的内容 大概来自历史记录 但似乎没有办法真正接受这个建议 按 Tab 键只是执行正常的 PowerShell 自动完成 通常是 cmdlet 或路径 这个功能是什么 我
  • Java 8 lambda 表达式身份契约

    The JavaDoc 为LambdaMetaFactoryJava 1 8 的指定 lambda 捕获 可能涉及新函数对象的分配 或者可能返回现有函数对象 但它没有指定何时以及在什么情况下它可能选择一种方式或另一种方式 看看实际执行情况L
  • Numpy 性能差异取决于数值

    在评估 Numpy 中的表达式时 我发现了奇怪的性能差异 我执行了以下代码 import numpy as np myarr np random uniform 1 1 1100 1100 进而 timeit np exp 0 5 myar
  • Dijkstra 负权重算法

    好吧 首先我知道 Dijkstra 不适用于负权重 我们可以使用 Bellman ford 代替它 但在我遇到的一个问题中 它指出所有边的权重都从 0 到 1 不包括 0 和 1 而路径的成本实际上就是产品 所以我的想法就是只取日志 现在所
  • Rails 6.1.5:未初始化常量 Mail::TestMailer

    为什么我在 Rails 6 1 5 Ruby 3 1 0 中遇到 未初始化常量 Mail TestMailer 错误 而在 Rails 6 1 5 Ruby 3 0 1 没有问题的情况下工作 发现以下来自Ruby 3 1 0 的新闻 The
  • 使用 PIL 翻译图像 [重复]

    这个问题在这里已经有答案了 如何使用 PIL 和 python 将图像在四个方向之一上平移 5 个像素 我已经看到我们可以使用im transform size AFFINE data 但我不知道该怎么做 Image transform s
  • 如何获得 Task.WhenAny 对 Task 和 CancellationToken 的效果?

    我有一个交互式任务 在 最糟糕 的情况下根本不会执行 因此它由TaskCompletionSource 我想等待此任务完成 或者我收到的令牌被取消 以先发生者为准 完成此类工作的完美工具是Task WhenAny 唯一的问题是它只需要任务
  • 将 RGB8 byte[] 转换为位图

    我有来自相机的 RGB8 格式的原始像素数据 我需要将其转换为Bitmap 但是 那Bitmap PixelFormat似乎只支持 RGB 16 24 32 和 48 格式 我尝试使用PixelFormat Format8bppIndexe
  • Hibernate 不会在 Spring Boot 项目中抛出 LazyInitializationException

    我使用 Hibernate 5 0 从事 Spring Boot 项目 不幸的是 Hibernate 会读取延迟初始化的对象而不抛出异常LazyInitializationException即使在事务提交之后 我怎样才能启用LazyInit
  • Linq/EF、预加载和 GROUP BY 问题

    我在 GROUP BY 和急切加载方面遇到问题 我尝试解释我在做什么 我正在查询数据上下文 ctx 的事件 事件类具有以下属性 string Description DateTime Date bool IsDeleted Guid Sub
  • 在没有第 3 方 Cookie 的情况下使用 Google Firebase 身份验证

    我目前正在尝试社交媒体登录 并意识到这些登录的传递方式有点奇怪 这是因为我的工作场所 像大多数办公室一样 将阻止第 3 方 cookie 作为安全策略 谷歌 Firebase 身份验证使用第 3 方 cookie 因此如果我尝试使用 Fir
  • NSSortDescriptor 将数字作为字符串进行排序?

    有一个充满字典的数组 如下所示 order 10 name David order 30 name Jake order 200 name Michael 当我像下面的代码一样使用 NSSortDescriptor 时 它只对第一个字符进行
  • Chrome 扩展:如何检测内容脚本已加载到选项卡中?

    我的后台脚本中有以下代码 chrome tabs onUpdated addListener function tabId changeinfo tab if changeinfo status complete return if mat
  • 烫伤:如何在 groupBy('field){.size} 之后保留其他字段?

    所以我的输入数据有两个字段 列 id1和id2 我的代码如下 TextLine args input read mapTo line gt id1 id2 line String gt val fields line split t fie