gpt4 book ai didi

python - 从 CSV 读取数据并将数据写入 CSV - 字符串到整数

转载 作者:行者123 更新时间:2023-12-01 01:08:25 26 4
gpt4 key购买 nike

我有一个包含 100,000 行的 CSV 文件。

A 列中的每一行都是一个由字符和整数组成的句子。

我希望 B 列仅包含整数。

我希望新列位于同一个 CSV 文件中。

我怎样才能做到这一点?

最佳答案

如果我正确理解你的问题,我会使用.isdigit()来解析A列中的数据。坦率地说,我不确定A列的格式是什么,所以我不知道你会用这个做什么(如果你提供更多信息,我可以给出更具体的答案)。您的解决方案可能将采用与此类似的形式:

def find(lines):
B = []
for line in lines:
numbers = [c for c in line if c.isdigit()]
current = int(''.join(numbers))
# current is the concatenation of all
# integers found in column A from left to right
B.append(current)
return B

请告诉我这是否有意义或者是否符合您的解决方案。再说一遍,在不知道你想做什么以及 A 是什么样子的情况下,我不确定你的实际目标是什么。

编辑

我不会向你解释 csv 的东西,主要是因为 python here 中包含了一个很棒的资源和库。 。如果您有与编写 csv 相关的具体问题,请务必发布。

听起来你本质上是想从 A 列中取出 int 值,然后将它们添加到新的 B 列中。肯定有很多方法可以解决这个问题,但问题的一般形式是针对你要过滤的每一行出 int,然后将过滤后的 int 添加到新列中。我将列出几个:

  • 正则表达式:您可以使用 [0-9]+ 等模式从 A 中提取字符串,然后使用 int(无论输出是什么) 转换为 int,然后将这些值存储在 B 中。我很喜欢一个好的正则表达式,而这个是相当简单的。 Regexr是了解这一点并测试您的模式的绝佳资源。

  • 使用与上面类似的算法:上面的算法以前有效,但我稍微更新了它。现在它已更新,它将返回与 A 中从左到右的数字相对应的数字数组。这是相对合理的,但它不一定保证你有正确的整数,因为如果标题中有一个 int,它会弄乱一些事情。不过,这可能是更明确的方法之一。

关于python - 从 CSV 读取数据并将数据写入 CSV - 字符串到整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55106076/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com