pandas - 替换 DataFrame 索引中的 NaN

标签 pandas replace label dataframe nan

我有一个如下所示的 DataFrame:

      one | two 
a   |  2  |  5
b   |  3  |  6
NaN |  0  |  0

如何用字符串替换索引中的 NaN,比如“无标签”?

我试过了:
df = df.replace(np.NaN, "No label") 


df.index = df.index.replace(np.NaN, "No label") 

但是得到了
TypeError: expected string or buffer

最佳答案

您可以先将原始索引作为系列处理,然后重新分配索引:

import pandas as pd
import numpy as np
df = pd.DataFrame({'one': [2, 3, 0], 'two': [5, 6, 0]}, index=['a', 'b', np.nan])
df.index = pd.Series(df.index).replace(np.nan, 'No label')
print df

输出:
          one  two
a           2    5
b           3    6
No label    0    0

关于pandas - 替换 DataFrame 索引中的 NaN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32506689/

相关文章:

python - 如何在 Pandas Python 中按 id 对行进行排名

python - 遍历 pandas 列并附加一组字典?

python - pandas:用一些 numpy 数组填充一列

linux - 跨多个文件增量查找和替换 - Bash

java - 如何用其他非数字 java 替换非数字

regex - 在两个字符串Powershell之间替换文本

javascript - 如何解码 Javascript/jQuery [object Object]

date - 如何将 SelectOneMenu 标签中的日期转换为 dd/mm/yyyy

html - CSS Transition 和复选框标签的问题

python - 计算 pandas dataframe 对象中每个唯一实体的值