将函数映射到两个输入列表

2024-01-02

我有一个函数想要用多组输入进行测试。假设函数是

f :: a -> b -> c

现在我有两个输入列表:

inputA :: [a]
inputB :: [[b]]

For inputA !! i,我要评价f $ input !! i对于列表中的每个元素inputB !! i。我知道我需要几个应用程序map做到这一点,但我很难找到解决方案。

我最近的尝试是

map f inputA <$> inputB

这给出了以下错误:

无法匹配预期类型a0 -> b0' with actual type[b1]'
在调用的返回类型中map'
Probable cause:
map' 应用于太多参数
在第一个参数中(<$>)', namely输入图S'
表达式中:map f inputA inputB

我应该如何解决这个问题?我不一定想要一个完整的解决方案。朝着有帮助的方向推动(甚至推动)肯定会受到赞赏。

附加想法:

map f inputA :: [b -> c]

我认为这是正确的方向。现在我需要将每个函数映射到每个输入列表上inputB.

为了澄清,我想绘制地图i中的第一个函数map f inputA超过i第一个输入列表inputB得到结果outputC :: [[c]].


您可以使用zipWith

Prelude> let a = [1,2,3]
Prelude> let b = [[1,2,3],[4,5,6],[7,8,9]]
Prelude> zipWith (\a' bl -> map (+a') bl)  a b
[[2,3,4],[6,7,8],[10,11,12]]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将函数映射到两个输入列表 的相关文章

  • 我应该在 Turtle 或 Foldl 包中使用折叠吗?

    我在使用 Turtle 时遇到了一些困难 直到盯着难以理解的错误消息几分钟后才意识到我使用了错误的fold功能 https hackage haskell org package turtle 1 5 8 docs Turtle Shell
  • Haskell:是的,没有类型类。为什么是整数?

    我有一个关于 GHCi 如何假定整数类型的问题 我正在阅读 Learn you a Haskell 是 否类型的课程 如果您想阅读全文 这里有一个链接 http learnyouahaskell com making our own typ
  • 纯函数怎么能做IO呢?

    我最近了解到莫纳德随机数 http hackage haskell org package MonadRandom 0 1 13 docs Control Monad Random Class html t 3aMonadRandom图书馆
  • 如何在 Haskell 中安装库?

    我尝试使用控制 Monad Extra andM https hackage haskell org package extra 1 7 10 docs Control Monad Extra html import Control Mon
  • Haskell 中列表列表的笛卡尔积

    给定一个长度列表的列表x所有子列表的长度都相同y 输出y x长度列表x包含每个子列表中的一项 例子 x 3 y 2 1 2 3 4 5 6 Output 2 3 8不同的输出 1 3 5 1 4 5 1 3 6 1 4 6 2 3 5 2
  • 标准的能力

    我发现了一些使用标准的旧例子here http www serpentine com blog 2009 09 29 criterion a new benchmarking library for haskell 看起来好像早在 2009
  • Traversable 类型类的用途

    有人可以向我解释一下类型类的目的是什么吗Traversable 类型类定义是 class Functor t Foldable t gt Traversable t gt where So Traversable is a Functor
  • 简单 Haskell Monad - 随机数

    我正在尝试扩展代码这个帖子 https stackoverflow com questions 3944170 haskell and state 接受的答案 允许我能够基于以种子作为参数的函数 randomGen 调用 randomGen
  • Haskell:Data.Numbers.Primes 库在哪里?

    我尝试导入 Data Numbers Primes import Data Numbers Primes 伦哈斯克尔给了我 5 hs 1 8 Could not find module Data Numbers Primes Use v t
  • 有没有更好的方法将 UTC 时间转换为大纪元时间?

    我想将文件的修改时间设置为从 exif 数据获取的时间 为了从 exif 获取时间 我发现 Graphics Exif getTag Exif gt String gt IO Maybe String 要设置文件修改时间 我发现 Syste
  • 找不到模块“Yesod”

    我有以下代码 LANGUAGE TypeFamilies QuasiQuotes MultiParamTypeClasses TemplateHaskell OverloadedStrings module Simple where imp
  • Haskell:IORef 的性能

    我一直在尝试在 Haskell 中编码一个需要使用大量可变引用的算法 但与纯粹的惰性代码相比 它 也许并不奇怪 非常慢 考虑一个非常简单的例子 module Main where import Data IORef import Contr
  • Haskell - lambda 表达式

    我试图了解什么是有用的以及如何在 Haskell 中实际使用 lambda 表达式 我不太明白使用 lambda 表达式相对于定义函数的约定方式有何优势 例如 我通常会执行以下操作 let add x y x y 我可以简单地打电话 add
  • Haskell 标准库是什么?

    GHC专用库可以称为标准库吗 或者只有 Haskell 2010 报告中的那些才算数 许多 GHC 库可以通过 Haskell 报告中的函数来实现 可能与 C 绑定相结合 但其他语言依赖于 GHC 特定的扩展 因为语言报告中定义的当前 Ha
  • 在 Haskell 中合并两个列表

    无法弄清楚如何合并两个列表通过以下方式在哈斯克尔 INPUT 1 2 3 4 5 11 12 13 14 OUTPUT 1 11 2 12 3 13 4 14 5 我想提出一个更懒的合并版本 merge ys ys merge x xs y
  • 不同编程语言中的浮点数学

    我知道浮点数学充其量可能是丑陋的 但我想知道是否有人可以解释以下怪癖 在大多数编程语言中 我测试了 0 4 到 0 2 的加法会产生轻微的错误 而 0 4 0 1 0 1 则不会产生错误 两者计算不平等的原因是什么 在各自的编程语言中可以采
  • 如何在Haskell中实现词法分析器和解析器

    我在这里得到了这段代码 它是用Haskell结构的命令式编程语言编写的程序 所以问题是 我如何为这种语言实现词法分析器和解析器 该程序被定义为一系列语句有 6 种类型 goto write stop if goto 和 int int n
  • 如何打乱列表?

    如何从一组数字 1 2 3 直到我击中x 我的计划是重新调整列表 1 2 3 并把它砍在x chopAt 3 2 3 1 2 3 chopAt 3 2 1 3 2 1 3 chopAt 3 3 1 2 3 chopAt chopAt x y
  • C++ 概念与 Haskell 类型类有何不同?

    Concepts TS 中的 C 概念最近已合并到 GCC 主干中 概念允许人们通过要求类型满足概念的条件 例如 可比较 来约束通用代码 Haskell 有类型类 我对 Haskell 不太熟悉 概念和类型类如何相关 概念 由概念 TS 定
  • 如何同时将透镜(或任何其他光学器件)视为吸气剂和设置剂?

    我正在尝试编写一个通用记录更新程序 它允许人们轻松更新记录中的字段existing记录 字段形状相似incoming记录 这是我到目前为止所拥有的 applyUpdater fields existing incoming let gett

随机推荐

  • 如何调整查询Stackoverflow API时返回结果的数量?

    我正在使用 Stackoverflow JSON API 来检索标有给定标签的问题 我有一个用 Java 编写的小程序 它可以检索标有 Java 标签的问题 public static void main String args throw
  • JQuery Mobile 用户滚动到底部

    使用以下代码 我试图找到用户何时滚动到页面底部 在 JQuery 移动版中 window scroll function if window scrollTop document height window height alert The
  • Android——隐藏视图

    好吧 我环顾四周 我明白了你应该如何做 但对我来说 这是行不通的 我需要能够在 XML 和代码中设置relativelayout 的 alpha 对于我的 XML 我有以下内容
  • 转换为灰度是图像预处理中的必要步骤吗?

    我想知道将图像转换为灰度是否是所有图像预处理技术的必要步骤 我正在使用神经网络进行人脸识别 是否真的有必要将其转换为灰度 或者我可以将彩色图像也作为神经网络的输入吗 转换为灰度对于图像处理来说并不是必需的 但通常出于以下几个原因进行转换 简
  • setTimeout 函数以错误的顺序运行[重复]

    这个问题在这里已经有答案了 当我按顺序执行下面三行时 它们按顺序输出3 1 2 如果订单不是3 2 1 因为第一条线的延迟比第二条线长 1ms vs 0ms setTimeout gt console log 1 1 setTimeout
  • EXCEL 多位异或

    我有两个单元格 其中包含一串位 0111010 和 0101011 我想将两者异或在一起 以便得到的单元格为 0010001 我知道你可以用它来表示布尔值 OR AND A1 NOT A2 AND A2 NOT A1 但它不适用于一串位 您
  • 为什么c++中没有多方法? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我读了很多关于如何在 C 中实现多方
  • 如何在 iOS 中的共享首选项中保存 cookie?

    如何在 iOS 中的共享首选项中保存 cookie 以及以后如何提取它 我想保存 cookieHTTPCookieStorage shared cookies进入用户默认值 然后提取 请用 Swift 3 回答 试试这个代码 Store f
  • 如何使用 Google 地图搜索我自己的位置数据(与地点搜索 API 功能相同,但针对我自己的“地点”)

    查看相关问题 谷歌地图自定义本地搜索 搜索控件 https stackoverflow com questions 3386841 google maps custom local search search control 我知道我可以创
  • 为什么大括号初始化器的自动类型推导和模板类型推导不同?

    我明白 给定一个支撑初始化器 auto将推导出一个类型std initializer list 而模板类型推导将会失败 auto var 1 2 3 type deduced as std initializer list
  • 自定义适配器中的位置错误

    我创建了一个定制适配器管理一些Buttons每个里面ListView物品 如果我向下滚动列表并单击按钮 适配器就会采取错误的位置 LISTVIEW item 1 item 2 item 3 item 4 item 5 item 6 item
  • 如何以编程方式调用 Maven 任务

    我在另一个构建工具 Clojure 的 leiningen 但这不重要 的上下文中使用 Maven 我想知道如何调用像依赖 构建类路径 http maven apache org plugins maven dependency plugi
  • 在序言中随机播放

    我正在尝试在序言中编写一个过程 其中如果 L1 1 2 3 且 L2 4 5 6 那么 L3 1 4 2 5 3 6 so shuffle 1 2 3 4 5 6 1 4 2 5 3 6 到目前为止我有这个 shuffle X Y X Y
  • golang - 反射包中的 Elem 与间接

    来自文档 func v Value Elem Value Elem 返回接口 v 包含的值或指针 v 指向的值 如果 v 的 Kind 不是 Interface 或 Ptr 它会发生恐慌 如果 v 为零 则返回零值 func Indirec
  • PasswordHash 无法与 CodeIgniter 一起使用

    我已经把我下载的文件放在了http www openwall com phpass http www openwall com phpass to application libraries 在我的控制器中 我使用这段代码 params a
  • Java中如何手动进行长时间Full GC

    如何编写一些代码将对象分配到 Old Gen 中 从而导致 Full GC 时间超过三五秒 将对象分配到 Old Gen 中 和 长 GC 暂停 很难结合起来 因为你可以对垃圾收集器做的最糟糕的事情就是创建大量小的 链接的 活动的对象 形成
  • 多重排序的 URL 查询字符串约定

    我有一个 RESTful Web 应用程序 支持对项目集合进行多个排序字段 是否存在将这些排序字段编码到 URL 的查询字符串中的通用约定 我正在考虑如下的模式 http myapp com books sort author asc da
  • 如何在c#中获取组合键

    How can I capture Ctrl Alt K P keys on a C form thanks 这是一个和弦 如果不记住看到和弦的第一个击键 就无法检测到它 这有效 public partial class Form1 For
  • gitlab runner 请求的 URL 返回错误:403

    我目前正在使用 gitlab com 不是本地安装 及其多运行程序进行 CI 集成 这在我的一个项目中效果很好 但在另一个项目中却失败了 我的主机使用的是 2012R2 MSBuild 版本为 14 0 23107 0 我知道下面的错误显示
  • 将函数映射到两个输入列表

    我有一个函数想要用多组输入进行测试 假设函数是 f a gt b gt c 现在我有两个输入列表 inputA a inputB b For inputA i 我要评价f input i对于列表中的每个元素inputB i 我知道我需要几个