Pandas DataFrame.rdiv(~)
方法将标量、序列、系列或 DataFrame 除以源 DataFrame 中的值,即:
other / DataFrame
请注意,这与 DataFrame.div(~)
正好相反:
DataFrame / other
注意
除非您使用参数 axis
、 level
和 fill_value
,否则 rdiv(~)
相当于使用 /
运算符执行除法。另外 rdiv(~)
相当于 rtruediv(~)
。
参数
1.other
| scalar
或 sequence
或 Series
或 DataFrame
生成的 DataFrame 将由 other
除以源 DataFrame。
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。
例子
基本用法
考虑以下数据帧:
df = pd.DataFrame({"A":[1,10], "B":[100,1000]})
df_other = pd.DataFrame({"A":[3,4], "B":[5,6]})
A B | A B
0 1 100 | 0 3 5
1 10 1000 | 1 4 6
计算除法产生:
df.rdiv(df_other)
A B
0 3.0 0.050
1 0.4 0.006
请注意,这相当于以下内容:
df_other / df
A B
0 3.0 0.050
1 0.4 0.006
广播
考虑以下 DataFrame :
df = pd.DataFrame({"A":[1,10], "B":[100,1000]})
df
A B
0 1 100
1 10 1000
按行划分
默认情况下, axis=1
,这意味着 other
将为 df
中的每一行广播:
df.rdiv([3,4]) # axis=1
A B
0 3.0 0.040
1 0.3 0.004
在这里,我们执行以下逐元素除法:
3/1 4/100
3/10 4/1000
按列划分
要为 df
中的每一列广播 other
,请像这样设置 axis=0
:
df.rdiv([3,4], axis=0)
A B
0 3.0 0.030
1 0.4 0.004
在这里,我们执行以下逐元素除法:
3/1 3/100
4/10 4/1000
指定fill_value
考虑以下数据帧:
df = pd.DataFrame({"A":[3,np.NaN], "B":[np.NaN,4]})
df_other = pd.DataFrame({"A":[12,20],"B":[np.NaN,np.NaN]})
A B | A B
0 3.0 NaN | 0 12 NaN
1 NaN 4.0 | 1 20 NaN
默认情况下,当我们使用 rdiv(~)
计算除法时,任何使用 NaN
的操作都会产生 NaN
:
df.rdiv(df_other)
A B
0 4.0 NaN
1 NaN NaN
我们可以在执行除法之前使用 fill_value
参数填充 NaN
值,如下所示:
df.rdiv(df_other, fill_value=2)
A B
0 4.0 NaN
1 10.0 0.5
在这里,请注意两个 NaN
之间的除法仍然会导致 NaN
,而不管 fill_value
如何。
相关用法
- Python PySpark DataFrame rdd属性用法及代码示例
- Python Pandas DataFrame rank方法用法及代码示例
- Python Pandas DataFrame radd方法用法及代码示例
- Python PySpark DataFrame repartition方法用法及代码示例
- Python PySpark DataFrame replace方法用法及代码示例
- Python Pandas DataFrame reset_index方法用法及代码示例
- Python Pandas DataFrame reorder_levels方法用法及代码示例
- Python Pandas DataFrame rsub方法用法及代码示例
- Python Pandas DataFrame round方法用法及代码示例
- Python Pandas DataFrame resample方法用法及代码示例
- Python Pandas DataFrame reindex方法用法及代码示例
- Python PySpark DataFrame randomSplit方法用法及代码示例
- Python Pandas DataFrame replace方法用法及代码示例
- Python Pandas DataFrame rolling方法用法及代码示例
- Python Pandas DataFrame rpow方法用法及代码示例
- Python Pandas DataFrame rfloordiv方法用法及代码示例
- Python Pandas DataFrame rtruediv方法用法及代码示例
- Python Pandas DataFrame rename_axis方法用法及代码示例
- Python Pandas DataFrame rmod方法用法及代码示例
- Python Pandas DataFrame rmul方法用法及代码示例
- Python Pandas DataFrame rename方法用法及代码示例
- Python Pandas DataFrame empty属性用法及代码示例
- Python Pandas DataFrame pop方法用法及代码示例
- Python Pandas DataFrame nsmallest方法用法及代码示例
- Python Pandas DataFrame sample方法用法及代码示例
注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 Pandas DataFrame | rdiv method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。