Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 错误_bad_line=False不';t删除带有额外列的行_Python_Pandas_Csv - Fatal编程技术网

Python 错误_bad_line=False不';t删除带有额外列的行

Python 错误_bad_line=False不';t删除带有额外列的行,python,pandas,csv,Python,Pandas,Csv,我有一个csv文件,我用熊猫处理。我对以下列进行了说明: df.columns = ["id", "ocr", "raw_value", "manual_raw_value"] 但是,我有一些行超过五列。例如: id ocr raw_value manual_raw_value 2d704f42 OMNIPAGE remuneration rémunération hello bfa6c9f14 OMNIPAG

我有一个csv文件,我用熊猫处理。我对以下列进行了说明:

df.columns = ["id", "ocr", "raw_value", "manual_raw_value"]
但是,我有一些行超过五列。例如:

id             ocr       raw_value      manual_raw_value
2d704f42    OMNIPAGE    remuneration      rémunération       hello
bfa6c9f14   OMNIPAGE    35470              35470
213e1e1e    OMNIPAGE    Echeance          Echéance
为了不读取包含额外列的行(如第一行),我执行了以下操作

但是,保留了具有额外列的行


谢谢你再试一次。为了便于索引,我将重命名列,即使是那些不必要的列:

df.columns = range(0, df.shape[1])
我假设空的地方是NaN,所以有效的行在其他列中会有所有NaN。我没有成功地搜索到特定的函数,所以我会在单个列中进行交互,只保留带有NaN的列,并只选择需要的列:

for i in range(4, df.shape[1]):
    df = df[df.iloc[:,i].isnull()]
df = df[[0, 1, 2, 3]]

然后根据需要重命名它们。希望这会有所帮助

谢谢你的回答。目标是删除超过四列的所有行。您的解决方案倾向于采用所有的行,甚至是那些列数大于的行,但不采用第五列抱歉,我误解了您的问题。想帮忙。
for i in range(4, df.shape[1]):
    df = df[df.iloc[:,i].isnull()]
df = df[[0, 1, 2, 3]]