我正在尝试使用pandas lib for python在csv文件中删除一行。应该删除的行包含特定的ID。在执行脚本时,我总是得到一个KeyError:“在轴上找不到[['12345']”。有人有解决方案吗?
示例数据框:
id date time
12345 11-7 11am
12346 11-7 12pm
12347 11-7 1pm
代码:
import pandas as pd
id = "123456"
filename = datacollection.csv
data = pd.read_csv(filename, encoding="utf-8", index_col="id")
data.drop(id, axis=0, inplace=True)
预期结果将是:
id date time
12346 11-7 12pm
12347 11-7 1pm
那样容易。但是,我尝试了Internet上各种站点上提供的许多不同解决方案,但是没有任何效果。
答案 0 :(得分:1)
尽管,id = "123456"
在您的数据中不存在。因此,请先进行验证。
尝试一下:
数据:Dataset.csv
id date time
12345 11-7 11am
12346 11-7 12pm
12347 11-7 1pm
代码:
import pandas as pd
id = 12345
filename = 'Dataset.csv'
data = pd.read_csv(filename, sep=' ', encoding="utf-8", index_col=['id'])
data = data.drop(data.loc[data.index==id].index)
print(data)
输出:
date time
id
12346 11-7 12pm
12347 11-7 1pm