Python - 将字符串列表转换为浮点数 - 方括号和小数点导致问题

2024-06-23

我有一个文本文件,其中包含较小的数据集(取自 csv 文件),如下所示 -

2020-05-24T10:44:37.613168#[ 0.          0.         -0.06210425  0.        ]
2020-05-24T10:44:37.302214#[1. 1. 0. 0.]
2020-05-24T10:44:36.192222#[0. 0. 0. 0.]

然后使用它读取

data = f.readlines()
for row in data:
    img_id, label = row.strip("\n").split("#")

其中 label 是一个字符串列表,如下所示

[ 0.          0.         -0.24604772  0.        ]
[ 0.          0.         -0.24604772  0.        ]
[1. 1. 0. 0.]

我想将每个字符串元素转换为浮点数。然而,方括号[]和小数.阻止我转换。

到目前为止尝试过 -

  1. 去除[] so - label = label[1:-1]但稍后我需要它们作为数组。 然后这样做print([list(map(float, i.split())) for i in label])导致错误ValueError: could not convert string to float: '.'

  2. Using ast.literal_eval.label = ast.literal_eval(row.strip("\n").split("#"))。得到ValueError: malformed node or string: ['2020-05-24T10:57:52.882241 [0. 0. 0. 0.]']

Referred

需要将字符串读入浮点数组 https://stackoverflow.com/questions/21222702/need-to-read-string-into-a-float-array

无法使用 float() 将字符串列表转换为 python 中的浮点数列表 https://stackoverflow.com/questions/61953188/cannot-convert-list-of-strings-to-list-of-floats-in-python-using-float

如何使用 Python 将字符串列表转换为浮点数列表? https://stackoverflow.com/questions/51844300/how-do-you-convert-a-list-of-strings-to-a-list-of-floats-using-python

将字符串列表转换为浮点数的 numpy 数组 https://stackoverflow.com/questions/56642038/convert-list-of-strings-to-numpy-array-of-floats

何时使用 ast.literal_eval https://stackoverflow.com/questions/29552950/when-to-use-ast-literal-eval

So,

  1. 为了将它们转换为可迭代的浮点数组,我还应该尝试什么?或者我做错了什么?我应该去掉方括号吗?
  2. 如果我能让事情变得更容易,我怎样才能将数据存储在txt文件中?在这种情况下,CSV 比 txt 更好吗?
  3. 我需要将此逻辑扩展到 110,000 个条目。那么任何步骤都会导致问题吗?

谢谢。任何帮助将不胜感激。请帮忙。


对于每一行,修剪掉第一个和最后一个字符line[1:-1],用空格分割.split(),并解析每个浮点数float().

line = "[ 0.          0.         -0.24604772  0.        ]"
floats = [float(item) for item in line[1:-1].split()]

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

Python - 将字符串列表转换为浮点数 - 方括号和小数点导致问题 的相关文章

随机推荐

  • 变量在事实之前发生了变化,您能解释一下 Chrome V8 的这种行为吗?

    我正在编写一个 javascript 程序并在 Chrome 7 中运行它 当时我遇到了一些奇怪的行为 现在 在我的代码中 随着所有其他事情的发生 我花了一些时间才弄清楚那不是我 我已经提取了下面代码的精华
  • 列名不明确错误

    我在从 2 个表中选择命令时遇到问题 所以我有表1 table1 id int pk table1 name table1 surname table1 age table1 address table1 city 和表2 table2 i
  • SVG 模式在 Safari 中不起作用

    我正在尝试使用 SVG 制作类似网格的图案 我看到非常奇怪的行为
  • :before 带有属性选择器

    我有以下 html 表单 div p Field1 p div
  • 启动 CSS 动画 JavaScript

    如何用js启动CSS动画 第一行 webkitAnimation 有效 但其他行无效 anim logo style webkitAnimation threesixty 3s anim logo style mozAnimation th
  • 使用 pySpark 在 Azure Databricks 中使用来自 EventHub 的事件

    我可以看到 Spark 连接器和使用 Azure Databricks 中的 Scala 从事件中心消费事件的指南 但是 我们如何使用 pySpark 从 azure databricks 消费事件中心中的事件 任何建议 文档详细信息都会有
  • 如何在 C++ 中终止或停止分离线程?

    我对终止 停止 杀死 C 中的分离线程感兴趣 如何才能做到这一点 void myThread int loop 0 while true std this thread sleep for std chrono seconds 5 loop
  • 带有特殊/unicode 字符的 toLowerCase 会引发异常

    如我错了请纠正我 If str有一个字符 例如 然后运行 str toLowerCase Locale English 抛出空指针异常 这就是我所看到的行为 那么这是怎么回事呢 这是怎么回事 未指定 toLowerCase 抛出空指针异常
  • jqgrid 一列的自定义编辑行为

    我想要一个 jqGrid 对于某一列 不是将单元格变成文本框 而是弹出一个需要填写的表单 关闭表单后 输入的数据将保存到单元格中 用户永远无法直接与单元交互 以免损坏数据 看图片 我有我想要与之交互的用户表 某处也恰好有一张书桌 当用户单击
  • 在铯地形图上导航,破坏图形的位置

    我在我的 gwt 项目中使用 cesium 并且使用 cesium terrain server 来处理地形 不是 cesium gwt 用 jsni 开发我自己的代码 我的问题 我正在地形 多边形 折线 上创建图形 当我在地图上导航时 图
  • Oozie 工作流程:未找到 Hive 表,但它确实存在

    我有一个 oozie 工作流程 在 4 台机器的 CDH4 集群上运行 一台主控机 三台 哑 工作机 hive 元存储使用 mysql 在 master 上运行 存在驱动程序 oozie 服务器也使用 mysql 在 master 上运行
  • 对 property_get 的未定义引用

    我的目标是进行微调以找到适当的线程优先级 我关注的线程位于 hardware my company codec openmax il 下 我修改了2个文件 Android mk 在 LOCAL C INCLUDES 列表中添加 TOP sy
  • 何时使用 Apollo 缓存重定向?

    阿波罗文档讨论使用cacheRedirects https www apollographql com docs react advanced caching html cacheRedirect告诉 Apollo 如何从其他查询访问缓存中
  • 不同类型的二维数组

    我想创建一个二维数组 在其中存储数据库中的记录 所以我们可以说第一个是类型int和第二个类型String 这里我只描述一条记录 所以基本上是数据库列的类型 我该怎么做 数组是正确的数据结构吗 我不确定我是否关注 但您可能正在寻找Map
  • 如何使用 youtube-dl 批量创建 youtube 下载器 gui

    这就是我目前所处的位置 cls echo off title youtube downloader downloader echo youtuber downloader pause cls echo please put the link
  • 帕斯卡三角形二维数组 - 格式化打印输出

    我有一个小作业 必须使用二维数组来生成帕斯卡三角形 这是我的代码 它有效 如果我像这样显示三角形 就会有额外的机会 source daugerresearch com https daugerresearch com vault Pasca
  • 如何禁用http请求标头中的范围选项?

    通过 google chrome 下载 PDF 时 我收到来自服务器的 206 状态响应 在查看 RFC 后 我发现客户端正在发出附加范围标头的条件 GET 请求 有没有办法在发出请求时禁用范围标头或使用不同的浏览器是解决方案 您使用什么服
  • 处理大量 HTTP JSON 响应的最佳方法

    解析来自服务器的 JSON 回复 以 1 个大行返回 的最有效方法是什么 我不想 不需要将此 JSON 映射 到某些自定义 业务对象 因为我只需要结构的特定部分 主要是在一组数组中查找特定的标签及其值 UPDATE 我正在寻找一种有效的方法
  • 为什么 10000000000000000 != 10000000000000000 ?

    首先 使用 C 在 Visual Studio 中查看以下代码 float a 10000000000000000 0 float b a 10000000000000000 0 当打印出来时 结果是 a 10000000272564224
  • Python - 将字符串列表转换为浮点数 - 方括号和小数点导致问题

    我有一个文本文件 其中包含较小的数据集 取自 csv 文件 如下所示 2020 05 24T10 44 37 613168 0 0 0 06210425 0 2020 05 24T10 44 37 302214 1 1 0 0 2020 0