python - 引用 CSV 标题字符串来调整列格式

标签 python csv

我对 python 和 csv 处理有点陌生,但我找不到任何我正在寻找的解决方案。当我在 Excel 中打开特定的 CSV 文件时,我会看到一个名为“rate”的列,其单位为百分比。我将此列中的所有值除以 100。到目前为止,我通过调用 row[6] =percentToFloat(row[6]) 来引用此列。我的问题是是否可以通过标题名称而不是仅通过列号来寻址行。

with open(input) as inFile:
    reader = csv.reader(inFile)
    reader.next()
    with open(output, 'w') as outFile:
        writer = csv.writer(outFile)
        for row in reader:
            if len(row)>1:  #skips empty rows
                row[6] = percentToFloat(row[6])
                writer.writerow(row)

最佳答案

您可以使用 Pandas 的数据框

import pandas as pd
import numpy as np

df = pd.read_csv('data.csv', header=True)
print(df)

print(df.rate)
print(df.rate/100.0)

关于python - 引用 CSV 标题字符串来调整列格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34600693/

相关文章:

获取列表中最大项目的 Pythonic 方法

python - 排除 coverage 中的 'else' 子句

python - 根据另一个表中的多个列在一个表中创建一列 [python]

c - 使用 ANSI 函数获取文本文件的特定行

postgresql - 如何将 PostgreSQL 查询输出导出到 csv 文件

python - Django的模板语言不能安全的处理dict

python - 在Integrate.quad中使用上限作为数组

python - 使用 ModelForm 在 django 中上传和处理 csv 文件

php - CSS Graph- 条形图显示不正确

python - 以编程方式阅读、突出显示、保存 PDF