【问题标题】:Initialize a Pandas DataFrame with a fill value other than NaN使用 NaN 以外的填充值初始化 Pandas DataFrame
【发布时间】:2016-12-03 02:23:14
【问题描述】:

假设我如下初始化一个“空”DataFrame:

import pandas as pd
import numpy as np
df = pd.DataFrame(index=list('AB'), columns=list('CD'))

生成的df 具有以下形式

     C    D
A  NaN  NaN
B  NaN  NaN

有没有一种 Python 的方法可以将 NaNs 替换为其他值,例如 -np.inf?当然,一种方法是简单地将其指定为数据:

df = pd.DataFrame(data=np.ones((2,2))*(-np.inf), index=list('AB'), columns=list('CD'))

或许还有更简洁的方式?

【问题讨论】:

标签: python pandas


【解决方案1】:

将标量值作为data 参数传递,这会将所有元素设置为相同的值:

In [181]:
df = pd.DataFrame(index=list('AB'), columns=list('CD'), data=-np.inf)
df

Out[181]:
     C    D
A -inf -inf
B -inf -inf

docs 表明 data 参数可以接受常量(标量值)以及类似数组的结构和字典。

【讨论】:

    猜你喜欢
    • 2015-02-14
    • 2019-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-26
    • 2021-12-14
    相关资源
    最近更新 更多