首页 > 解决方案 > 使用openpyxl用与整列相同的文本填充NaN?

问题描述

我在一个大型数据集(excel)中工作,其中一列对于每个条目都有相同的值。但是,有些单元格是空白的。有没有办法用列中的文本填充它?我在这里提供了一个示例数据集:

在此处输入图像描述

在此示例中,这被读取为使用

openpyxl.load_workbook('states.xlsx')

我想在空白处填写“MA”。感谢您的任何帮助!

标签: pythonpandasfor-loopnullnan

解决方案


fillna是一种解决方案

import pandas as pd
import numpy as np

df = pd.DataFrame({
    'City':['city1','city2','city3'],
    'Zip':[1,2,3],
    'State':[np.NaN,'MA','MA']
})

fill_val = df['State'].dropna().unique()[0]

df['State'] = df['State'].fillna(fill_val)
df

输出

    City    Zip State
0   city1   1   MA
1   city2   2   MA
2   city3   3   MA

推荐阅读