首页 > 解决方案 > 用值 Python-Pandas 替换空单元格

问题描述

我有一个看起来像这样的 csv 文件

col1,col2,col3,col4,col5

value1,value2,value3,value4,value5

,,value6,value7,value8

,,value10,value11,value12

我需要在空单元格中插入值。

我正在用这样的熊猫读取数据

import pandas as pd

data = pd.read_csv(file).fillna('yellow', 'blue') 

有什么建议吗?

更新:错误已解决我的csv中的行编辑错误。主要问题是如何将自定义值写入空单元格。

预期结果

col1,col2,col3,col4,col5

value1,value2,value3,value4,value5

yellow,blue,value6,value7,value8

yellow,blue,value10,value11,value12

实际结果

col1,col2,col3,col4,col5

value1,value2,value3,value4,value5

NaN,NaN,value6,value7,value8

NaN,NaN,value10,value11,value12

初始问题-> 已解决

我收到这样的错误:

pandas.errors.ParserError: Error tokenizing data. C error: Expected 5 fields in line 3, saw 6

标签: pythonpandas

解决方案


您在第 3 行和第 4 行中有 2 个空列。因此,它有 6 个列,但您有 5 个标题。只需像这样删除第一个逗号:

,value6,value7,value8,value9

对于第二个问题,你可以试试这个:

df['col1'] = df['col1'].fillna('yellow')

推荐阅读