将列表向量转换为向量向量

2023-12-09

我的 .txt 文件中有以下数据:

1|John Smith|123 Here Street|456-4567
2|Sue Jones|43 Rose Court Street|345-7867
3|Fan Yuhong|165 Happy Lane|345-4533

我获取数据并使用以下代码将其转换为向量:

(def custContents (slurp "cust.txt"))
(def custVector (clojure.string/split custContents #"\||\n"))
(def testing (into [] (partition 4 custVector )))

这给了我以下向量:

[(1 John Smith 123 Here Street 456-4567) (2 Sue Jones 43 Rose Court Street 
345-7867) (3 Fan Yuhong 165 Happy Lane 345-4533)]

我想将其转换为向量的向量,如下所示:

[[1 John Smith 123 Here Street 456-4567] [2 Sue Jones 43 Rose Court Street 
345-7867] [3 Fan Yuhong 165 Happy Lane 345-4533]]

我的做法略有不同,因此您首先将其分成几行,然后处理每一行。它还使正则表达式更简单:

(ns tst.demo.core
  (:require
    [clojure.string :as str] ))

(def data
"1|John Smith|123 Here Street|456-4567
2|Sue Jones|43 Rose Court Street|345-7867
3|Fan Yuhong|165 Happy Lane|345-4533")

  (let [lines       (str/split-lines data)
        line-vecs-1 (mapv #(str/split % #"\|" ) lines)
        line-vecs-2 (mapv #(str/split % #"[|]") lines)]
    ...)

结果:

lines => ["1|John Smith|123 Here Street|456-4567" 
          "2|Sue Jones|43 Rose Court Street|345-7867" 
          "3|Fan Yuhong|165 Happy Lane|345-4533"]

line-vecs-1 => 
   [["1" "John Smith" "123 Here Street" "456-4567"]
    ["2" "Sue Jones" "43 Rose Court Street" "345-7867"]
    ["3" "Fan Yuhong" "165 Happy Lane" "345-4533"]]

line-vecs-2 => 
   [["1" "John Smith" "123 Here Street" "456-4567"]
    ["2" "Sue Jones" "43 Rose Court Street" "345-7867"]
    ["3" "Fan Yuhong" "165 Happy Lane" "345-4533"]]

请注意,有两种执行正则表达式的方法。line-vecs-1显示一个正则表达式,其中管道字符在字符串中进行转义。由于正则表达式在不同平台上有所不同(例如,在 Java 上需要“\|”),line-vecs-2使用单个字符(管道)的正则表达式类,这避免了转义管道的需要。


Update

其他 Clojure 学习资源:

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

将列表向量转换为向量向量 的相关文章

  • 在 C++ 头文件中声明向量

    我在制作的 C 类的头文件中的向量声明时遇到一些问题 我的整个头文件如下所示 ifndef PERSON H define PERSON H include Message h include
  • 将运算符 << 添加到 std::vector

    我想添加operator lt lt to std vector
  • `list()` 被认为是一个函数吗?

    list显然是内置类型 https docs python org 3 library stdtypes html list在Python中 我看到底下有一条评论this https stackoverflow com a 53645813
  • 按升序对数字字符串列表进行排序

    我创建了一个SQLite https en wikipedia org wiki SQLite数据库有一个存储温度值的表 第一次将温度值按升序写入数据库 然后 我将数据库中的温度值读入列表中 然后将该列表添加到组合框中以选择温度 效果很好
  • 列出 J 中数字的数字

    我使用的编程语言 J 我想将一个数字的所有数字放入一个列表中 From 12345 to 1 2 3 4 5 我能做些什么 我写这个的方式是 10 1 我们可以看到它与这句话的使用 10 1 123456789 1 2 3 4 5 6 7
  • 对 Python 列表元素进行分组

    我有一个 python 列表 如下所示 my list 25 1 0 65 25 3 0 63 25 2 0 62 50 3 0 65 50 2 0 63 50 1 0 62 我想根据以下规则对它们进行排序 1 gt 0 65 0 62 l
  • 为什么对本地列表求和比用“GHC -O2”对教会编码列表求和慢?

    为了测试教会编码的列表如何针对用户定义的列表和本机列表执行 我准备了 3 个基准测试 用户定义的列表 data List a Cons a List a Nil deriving Show lenumTil n go n Nil where
  • 解压 R 数据框中的列表

    我有一个dataframe其中一个字段包含不同长度的列表 我想将该字段中列表的每个元素提取到其自己的字段中 以便我可以将结果收集到一个很长的字段中dataframe每个列表元素都有一个 id 这是一个例子dataframe dat lt s
  • 是否可以创建根据输入对象名称自行命名的列表?

    能够创建 R 列表对象而无需指定每个元素的名称对我来说非常有帮助 例如 a1 lt 1 a2 lt 20 a3 lt 1 20 b lt list a1 a2 a3 inherit name TRUE gt b a1 1 1 a2 1 20
  • 使用循环将对象添加到列表(python)

    我正在尝试使用 while 循环将对象添加到列表中 基本上这就是我想做的 class x pass choice raw input pick what you want to do while choice 0 if choice 1 E
  • Lisp 中的十进制到二进制 - 制作非嵌套列表

    当达到我的递归情况时 我使用list将未来结果附加到当前结果 但由于递归 我最终得到一个嵌套列表 当我有一个导致递归超过五次的数字时 这会导致错误 任何想法如何我可以在一个简单的非嵌套列表中获得结果 例如 CL 用户 100 8 gt BI
  • 内在数组访问比 std::vector 访问快得多——黑魔法?

    我已经设置了一个测试程序来将数组访问性能与 std vector 的访问性能进行比较 我发现了几个类似的问题 但似乎没有一个问题能解决我的具体问题 一段时间以来 我一直在摸不着头脑 为什么数组访问似乎比向量访问快 6 倍 而我过去读到它们应
  • Clojure 中的快速素数生成

    我一直在努力解决欧拉计划 https projecteuler netClojure 中的问题得到了改善 我已经遇到过几次素数生成问题 我的问题是它花费的时间太长了 我希望有人能帮助我找到一种有效的方法 以 Clojure 的方式做到这一点
  • Haskell - 交替两个列表中的元素

    我正在尝试编写一个 haskell 函数 它接受两个整数列表并生成一个列表 其中包含从两个列表中交替获取的元素 我有这个功能 blend xs ys 一个例子 blend 1 2 3 4 5 6 应该返回 1 4 2 5 3 6 我的逻辑是
  • python - 如何删除每行中的重复列表(pandas)?

    我的每一行中都包含一个列表 我想通过保留分数中的最高值来删除重复元素 这是我的数据框 df1 中的数据 pair score 0 A A 1 0000 1 A F 0 9990 2 A G 0 9985 3 A G 0 9975 4 A H
  • 列表中小于给定数字的数字

    xMenores xMenores X H T R Z xMenores X T Z X gt H R is H xMenores采用三个参数 第一个是数字 第二个是数字列表 第三个是一个列表 是将包含结果的变量 规则的目标xMenores
  • Matlab:如何显示数组的“真实”值?

    我有一个在脚本中计算的向量 计算后 我将值显示到命令窗口 显示如下 finalResults 1 0e 05 0 0001 0 0 0005 0 0002 0 0001 0 0027 0 0033 0 0001 0 0000 0 0000
  • 按属性对对象列表进行分组

    我需要对对象列表进行分组 Student 使用属性 Location 特定对象 代码如下 public class Grouping public static void main String args List
  • 按偶数和奇数索引对向量进行排序。由 小码哥发布于

    是否有一种单行 或简单的无循环 解决方案可以按偶数和奇数索引对向量进行排序 例子 long entries 0 1 2 10 11 indices 0 1 2 3 4 std vector
  • 如何在 git 中仅获取唯一的提交

    我想获取所有分支中唯一提交的列表 但是如果有人在分支中使用 rebase 则会提交松散的父项 如何解决这个问题呢 如何获取进行独特更改的提交列表 I use git log oneline graph cherry pick left ri

随机推荐

  • Mongo 用户定义函数和 MapReduce

    mongodb 有没有办法创建用户定义的 Javascript 函数 我在客户端有几个 Map Reduce 函数 我想在其他 MR 函数中使用它们 例如 多个 MR 函数可以计算各种平均值 我希望能够像这样使用它们 function re
  • TypeScript 装饰器和循环依赖

    考虑使用装饰器的相互依赖代码示例 如下 现在考虑以下工作流程 是的 我确实想传递实际导出的类 因为我稍后需要使用它们 应用程序导入并运行Parent ts Test Child 导致应用程序导入Child ts装修时 注 班级Parent代
  • 合并来自 git 存储库外部的更改

    我正在与该国另一边的另一位开发人员合作 他是我们项目的负责人 并且没有使用正式的版本控制系统 就我而言 我正在 git 中跟踪我的所有代码 我最近开始为主项目做出贡献 并且也希望能够跟踪其他开发人员的更新 当我收到他更新的代码时 它通常是
  • 在应用 LIMIT 之前获取结果计数的最佳方法

    当对来自数据库的数据进行分页时 您需要知道将有多少页来呈现页面跳转控件 目前我通过运行查询两次来做到这一点 一次包装在count 确定总结果 第二次应用限制以仅返回当前页面所需的结果 这看起来效率很低 有没有更好的方法来确定之前会返回多少结
  • opencv中的缩放和旋转模板匹配

    I want to use a template image to search target in the another image But the target have scale and rotation change also
  • 使用 jquery 预加载图像数组

    我正在使用 jQuery 从 php 数组构建图像数组 我想循环浏览这些图像 预加载它们 同时显示一些加载 gif 直到加载所有图像 目前 我已经尝试了很多方法来这样做 页面的其余部分似乎总是在继续加载 因此图像正在被预加载 但不是在页面加
  • ApplicationInsights OperationId 为空

    我正在实现自定义 ApplicationInsights 记录器 并且能够在跟踪 异常和请求等写入位置写入所有日志 但跟踪和异常中的 OperationId 为空 昨天我使用相同的代码并在所有表中获取OperationId 之后我玩了多线程
  • Rails 从 JSON 数组中选择

    我有一个从 Foursquare 返回的 JSON 数组 我们就这样称呼它吧 venues 我希望能够通过下拉框 选择 场地 并且我希望它成为表单的一部分 这意味着我希望能够按名称选择特定场地 即本例中为 Hotel Utah Saloon
  • 关于使用 Installshield 2013 (.issuite) 项目文件生成的 Setup.exe 进行静默安装

    我有一个使用 installshield 套件项目 issuite 文件生成的 setup exe 文件 对于具有足够权限的管理员或普通用户 我们的 IT 管理员之一可以使用以下命令进行静默安装 setup exe silent 但是 当尝
  • 按本地化排序列表

    我需要排序一个List
  • 通过jquery获取对象数组的索引

    我有以下数组 var array id aa description some description id bb description some more description id cc description a lot of d
  • 在 OSX Yosemite 上的 Emacs 中使用 LLVM 调试器

    我想知道是否可以将 LLVM 调试器与 Emacs 一起使用 例如M x gdb接口标准 提前致谢 令人惊讶的是 向 Emacs 添加 LLVM 调试器支持是有争议的 或者没有争议 取决于您的愤世嫉俗程度 2015年2月 理查德 斯托曼写道
  • 操作系统导致的 irq 延迟是多少?

    如何估计 ARM 处理器上的 irq 延迟 irq 延迟的定义是什么 中断请求 irq 延迟是中断请求从中断源传输到被服务点所需的时间 因为有不同的中断通过不同的路径来自不同的源 显然它们的延迟取决于中断的类型 您可以找到有关特定中断的延迟
  • web.config 中的 C# 命名空间

    来自 VB 背景并被迫学习 C 的我遇到了第一个障碍 在 VB 中 我可以将我想要在整个应用程序中可用的所有命名空间放入 web config 文件中 并且它将在每个代码隐藏文件中可用 而无需添加导入语句
  • 在单体 SpringBoot 应用程序中创建集成测试

    我被要求为一个非常大的 SpringBoot 项目中的一个服务创建一个集成测试 该项目产生了数十个已实现的服务 执行应用程序时 会部署所有这些服务 我想避免部署与我正在为其创建测试的服务无关的所有服务 不幸的是 我 还 没有像我希望的那样有
  • ViewBox 使 RichTextBox 失去插入符

    RichTextBox 放置在 ViewBox 内并缩放至 10 1000 的各个级别 当百分比小于 100 时 插入符号会在随机光标位置消失 我知道当视觉效果被缩小 压缩 时 它会丢失像素 有什么办法可以让我不再丢失光标吗
  • create-react-app 和节点服务器的 ECONNREFUSED 错误

    我正在使用 create react app 因此没有自定义 webpack 和节点服务器构建 MERN 应用程序 我正在使用 nodemon 重新启动后端上的更改 问题是大约一半的时间似乎我的前端尝试在 nodemon 重新启动节点服务器
  • jQuery .click() 不起作用?

    我在 html 表中生成了一组按钮 如下所示 然后我想在单击时调用该函数 each childData function key item var packPath key replace g Replace underscore with
  • 根据第一个非零将数字舍入到最接近的“nth”

    我想将 Double 舍入到小数点后最接近的非零数字 例如 x 0 002341 rounded 0 002 x 0 000048123 rounded 0 00005 对于基数 gt 0 的情况 应该这样执行 x 1 000234 rou
  • 将列表向量转换为向量向量

    我的 txt 文件中有以下数据 1 John Smith 123 Here Street 456 4567 2 Sue Jones 43 Rose Court Street 345 7867 3 Fan Yuhong 165 Happy L