【问题标题】:How to update values in a CSV column using a list?如何使用列表更新 CSV 列中的值?
【发布时间】:2021-07-07 19:31:36
【问题描述】:
list=[8,5,3,4,5,7,3,5]
Excel 中 CSV 文件的屏幕截图
我想用 python 替换 csv 文件中的所有值。例如,项目下的所有值都将替换为列表中的值。因此,在 Items 标题下的第 2 行中,值 4 将替换为列表中的 8,依此类推。我该怎么做?
【问题讨论】:
-
Stackoverflow 不是免费的编码服务,也不打算取代现有的教程或文档。您应该发送honest attempt at the solution,然后然后在必要时询问有关它的具体问题。
-
要替换 CSV 文件中的值,您需要首先将整个内容读入内存,更新内存中的值,然后重写整个文件。您可以使用 Python 标准库中的 csv 模块轻松读取和写入 CSV 文件。它也有很多例子。
标签:
python
arrays
list
csv
【解决方案1】:
使用熊猫:
import pandas as pd
df = pd.read_csv('filename.csv')
df['items'] = [8,5,3,4,5,7,3,5]
df.to_csv('filename.csv', index=False)
【解决方案2】:
由于要更新列中的所有值,因此可以从数据框开始。
import pandas as pd
import numpy as np
df = pd.read_csv('input.csv')
# now update the column
newlist=[8,5,3,4,5,7,3,5]
df['items'] = np.array(newlist)
#write back to csv
df.to_csv("output.csv", index=False)