Pandas DataFrame.add(~)
方法计算源 DataFrame 和另一个标量、序列 Series 或 DataFrame 中的值的总和,即:
DataFrame + other
注意
除非您使用参数 axis
、 level
和 fill_value
,否则 add(~)
相当于使用 +
运算符执行加法。
参数
1.other
| scalar
或 sequence
或 Series
或 DataFrame
生成的 DataFrame 将是源 DataFrame 和 other
的总和。
2. axis
| int
或 string
| optional
是否为源DataFrame的每一列或每一行广播other
:
轴 |
说明 |
---|---|
|
每列广播 |
|
|
仅当源 DataFrame 的形状与 other
的形状不一致时,这才相关。默认情况下,axis=1
。
3. level
| int
或 string
| optional
要考虑的级别的名称或整数索引。仅当您的 DataFrame 是多索引时,这才相关。
4. fill_value
| float
或 None
| optional
在计算总和之前替换 NaN
的值。如果总和涉及两个 NaN
,那么结果仍然是 NaN
。默认情况下,fill_value=None
。
返回值
由源 DataFrame 和 other
之和计算出的新 DataFrame
。
例子
基本用法
考虑以下数据帧:
df = pd.DataFrame({"A":[2,3], "B":[4,5]})
df_other = pd.DataFrame({"A":[6,7], "B":[8,9]})
A B | A B
0 2 4 | 0 6 8
1 3 5 | 1 7 9
计算它们的总和:
df.add(df_other)
A B
0 8 12
1 10 14
请注意,这相当于:
df + df_other
A B
0 8 12
1 10 14
广播
考虑以下 DataFrame :
df = pd.DataFrame({"A":[2,3], "B":[4,5]})
df
A B
0 2 4
1 3 5
逐行加法
默认情况下, axis=1
,这意味着 other
将为 df
中的每一行广播:
df.add([10,20]) # axis=1
A B
0 12 24
1 13 25
在这里,我们进行以下逐元素加法:
2+10 4+20
3+10 5+20
逐列加法
要为 df
中的每一列广播 other
,请像这样设置 axis=0
:
df.add([10,20], axis=0)
A B
0 12 14
1 23 25
在这里,我们进行以下逐元素加法:
2+10 4+10
3+20 5+20
指定fill_value
考虑以下带有一些缺失值的DataFrames:
df = pd.DataFrame({"A": [2,np.NaN], "B":[np.NaN,5]})
df_other = pd.DataFrame({"A":[10, 20],"B":[np.NaN,np.NaN]})
A B | A B
0 2 NaN | 0 10 NaN
1 NaN 5 | 1 20 NaN
默认情况下,当我们使用 add(~)
求和时,任何使用 NaN
的操作都会得到 NaN
:
df.add(df_other)
A B
0 12.0 NaN
1 NaN NaN
在使用 fill_value
计算总和之前,我们可以填充 NaN
值:
df.add(df_other, fill_value=100)
A B
0 12.0 NaN
1 120.0 105.0
这里,请注意,当加法涉及 NaN
时,所得总和仍然是 NaN
,而不管 fill_value
。
相关用法
- Python Pandas DataFrame add_prefix方法用法及代码示例
- Python Pandas DataFrame add_suffix方法用法及代码示例
- Python Pandas DataFrame agg方法用法及代码示例
- Python Pandas DataFrame all方法用法及代码示例
- Python Pandas DataFrame asfreq方法用法及代码示例
- Python Pandas DataFrame any方法用法及代码示例
- Python PySpark DataFrame alias方法用法及代码示例
- Python Pandas DataFrame append方法用法及代码示例
- Python Pandas DataFrame asof方法用法及代码示例
- Python Pandas DataFrame at属性用法及代码示例
- Python Pandas DataFrame axes属性用法及代码示例
- Python Pandas DataFrame astype方法用法及代码示例
- Python Pandas DataFrame align方法用法及代码示例
- Python Pandas DataFrame assign方法用法及代码示例
- Python Pandas DataFrame apply方法用法及代码示例
- Python Pandas DataFrame applymap方法用法及代码示例
- Python Pandas DataFrame at_time方法用法及代码示例
- Python Pandas DataFrame abs方法用法及代码示例
- Python Pandas DataFrame empty属性用法及代码示例
- Python Pandas DataFrame pop方法用法及代码示例
- Python Pandas DataFrame nsmallest方法用法及代码示例
- Python Pandas DataFrame sample方法用法及代码示例
- Python Pandas DataFrame items方法用法及代码示例
- Python Pandas DataFrame max方法用法及代码示例
- Python Pandas DataFrame swaplevel方法用法及代码示例
注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 Pandas DataFrame | add method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。