如何在大熊猫中的.csv文件中阅读带有特殊字符的文件?
题
我正在尝试在包含一些数据的.CSV文件中读取。我只需要在文件中读取特定的行,例如第15行20,第45行50行等。但是,该文件包含文本和复制写入信息,例如 ©1990-2016 AAR,All rights reserved
在几个地方。这样的行似乎正在产生错误 ValueError: No columns to parse from file
, ,因为当我只是在没有此类信息的情况下复制行时 pd.read_csv()
, ,正常工作。我的目标是自动化从网络下载这些文件并将其读取到熊猫中以抓住一排的过程,然后对其进行一些处理,因此我不能只手动指定缺少此类字符的文本窗口。
这是我尝试的:pd.read_csv("filename.csv",encoding=utf-8, skiprows = 14)
和 pd.read_csv("filename.csv",encoding=utf-16, skiprows = 15)
, 在查看了Stack Exchange中的类似答案之后,但这无效。谁能给我一些指导?
解决方案
有 df.drop
可以使用如下删除某些行的命令(在这种情况下为15&16):
df.drop(df.index[[15,16]])
如果您不需要的行是常规的(例如您不需要第15行),那么这是一个快速而肮脏的解决方案。
如果您只想删除包含一些值的任意行,这应该可以解决:
df = df.drop([df.column_name == ©1990-2016 AAR])