首页 > 解决方案 > Python 用 Panda 解析 csv 中的字符串值

问题描述

我是 Python 新手,我正在尝试使用 pandas 读取 csv 文件,但我的 csv 文件中有一些问题。我的字符串末尾包含逗号,这会在末尾创建一个不需要的列,如图所示:

csv文件表

这是原始的csv:

原始csv

例如,在 line 上14,绿色字符串值以逗号结尾并创建一个新列,然后在使用此列时会出现解析错误:

import pandas as pd

pd.read_csv("data.csv")

ParserError:错误标记数据。C 错误:预计第 8 行中有 6 个字段,看到 7

有没有办法可以清理它并合并最后两列?

标签: pythonpandascsv

解决方案


您可以使用np.where缺少 APP 的最后一列替换 APP,然后删除最后一列。

import pandas as pd
import numpy as np
df = pd.read_csv("data.csv")
df['APP'] = np.where(df.app.isna(), df[-1], df.APP)
df = df.iloc[:,:-1]

推荐阅读