【发布时间】:2016-04-29 18:47:27
【问题描述】:
我正在尝试删除 csv 文件中的特定行(不是列)
类项目。当我删除列时,我放了:
r=row
r[22], r[21]
# and so on
那么如何指定我要删除行呢?我正在处理人口普查数据,并希望摆脱总是在人口普查表中的那一行额外的标题。 感谢您的帮助。
【问题讨论】:
-
您是要物理删除文件的第一行,还是只想让 csv 阅读器忽略它?
我正在尝试删除 csv 文件中的特定行(不是列)
类项目。当我删除列时,我放了:
r=row
r[22], r[21]
# and so on
那么如何指定我要删除行呢?我正在处理人口普查数据,并希望摆脱总是在人口普查表中的那一行额外的标题。 感谢您的帮助。
【问题讨论】:
将您的 csv 阅读器转换为列表并切掉相应的索引:
import csv
with open('file.csv', 'rb') as f:
reader = csv.reader(f)
rows = list(reader)[1:] # no more header row
【讨论】:
使用 pandas,用它处理数据和文件非常容易。使用它轻松编辑您的数据。
您可以打开您的 csv 文件并将其转换为 pandas 数据框。
df = pandas.read_csv('file.csv')
之后就可以使用这个功能了。
df.drop(df.columns[[0]], axis=1)
在本例中,我将删除索引为 0 的行。
【讨论】: