【问题标题】:How can I extract a column from a csv in python [duplicate]如何从python中的csv中提取一列[重复]
【发布时间】:2020-04-16 15:54:47
【问题描述】:

我正在学习如何在 Python 中使用 csv,我想阅读 csv 的第 3 列并打印出内容。我正在使用下面的代码,但运行时得到的输出为 0。

    with open('prospects.csv', 'r') as csv_file:
        pros = csv.reader(csv_file)
        for row in pros:
            print(row[2])

下面是 CSV 文件的 sn-p:

rank,team,age,teamId,full_name,playerId,atBats,runs,hits,doubles,triples,homeRuns,obp,ops,slg,rbi,baseOnBalls,strikeOuts,stolenBases,caughtStealing,leftOnBase,totalBases,avg,position,sportAbbrev
1,tb,19,,Wander Franco,677551,425,82,139,27,7,9,.398,.885,.487,53,56,35,18,14,177,207,.327,SS,ALL (2)
2,la,22,,Gavin Lux,666158,533,111,177,29,9,28,.405,.983,.578,85,68,126,12,6,178,308,.332,SS,ALL (3)
3,cws,22,,Luis Robert,673357,503,108,165,31,11,32,.376,1.001,.624,92,28,129,36,11,186,314,.328,CF,ALL (3)
4,bal,22,,Adley Rutschman,668939,130,19,33,8,1,4,.351,.774,.423,26,20,27,1,0,56,55,.254,C,ALL (3)
6,ana,21,,Jo Adell,666176,350,63,100,31,0,11,.356,.825,.469,38,34,106,8,0,151,164,.286,OF,ALL (4)

【问题讨论】:

  • 使用您的确切代码,我似乎已经过时了。还缺什么吗?
  • 是的,也适合我。我只需要在顶部添加一个import csv 就可以了。
  • 一般来说:data = [row[column] for row in reader]
  • 奇怪的是,即使语法正确,它在我的 pycharm 中也不起作用

标签: python python-3.x csv


【解决方案1】:

如果您愿意使用 pandas (Pandas),那么

import pandas as pd
data = pd.read_csv('prospects.csv')

获取“年龄”列使用

data['age']

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-17
    • 2021-11-04
    • 1970-01-01
    • 2018-04-11
    • 2017-04-20
    • 1970-01-01
    • 1970-01-01
    • 2020-09-15
    相关资源
    最近更新 更多