python - 如何将 pandas 列分配给其他列,或者如果为 nan 则为默认值?

标签 python pandas

我有

df=

a
1
nan
3

我想要一些语法

df["b"] = df["a"] 或 5

创造

a     b
1     1
nan   5
3     3

pandas 支持这样的东西吗?

奖励:

每个索引/组/任何东西的不同默认值怎么样?

最佳答案

import pandas as pd
import numpy as np


df = pd.DataFrame({"a": [1, np.nan, 3]})
df["b"] = df["a"].fillna(5)
print(df)
     a    b
0  1.0  1.0
1  NaN  5.0
2  3.0  3.0

挖掘the doc给出了标准的 Pandas 解决方案。无需通过 numpy。

关于python - 如何将 pandas 列分配给其他列,或者如果为 nan 则为默认值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64700652/

相关文章:

python - SQLAlchemy Association_proxy 如何双向使用?

python-2.7 - 对于 python 中给定的值条件,将列名称作为数据框中的列表返回

python - groupby - TypeError 'DataFrame' 对象不可调用

python - 将数据框中的日期拆分为 2 个单独的数据框

python - Pandas python .describe() 格式化/输出

python - 在 Bash/Python 中转换 CIM_DATETIME

python - 用类模拟产量

python - 我该如何修复 NLTK 分块错误?

python - Wxpython的仪表不刷新

python - 如何聚合 Pandas 数据框中的累积列表?