当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Pandas DataFrame rtruediv方法用法及代码示例


Pandas DataFrame.rtruediv(~) 方法将标量、序列、系列或 DataFrame 除以源 DataFrame 中的值,即:

other / DataFrame

请注意,这与 DataFrame.truediv(~) 相反,它执行以下操作:

DataFrame / other
注意

除非您使用参数 axislevelfill_value ,否则 rtruediv(~) 相当于使用 / 运算符执行除法。另外,该方法相当于 rdiv(~) 方法。

参数

1.other | scalarsequenceSeriesDataFrame

生成的 DataFrame 将由 other 除以源 DataFrame。

2. axis | intstring | optional

是否为源DataFrame的每一列或每一行广播other

说明

"index"0

每列广播other

"columns"1

每行广播 other

仅当源 DataFrame 的形状与 other 的形状不对齐时,这才相关。默认情况下,axis=1

3. level | intstring | optional

要考虑的级别的名称或整数索引。仅当您的 DataFrame 是多索引时,这才相关。

4. fill_value | floatNone | 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.rtruediv(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.rtruediv([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.rtruediv([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

默认情况下,当我们使用 rtruediv(~) 计算除法时,任何使用 NaN 的操作都会产生 NaN

df.rtruediv(df_other)



   A    B
0  4.0  NaN
1  NaN  NaN

我们可以在执行除法之前使用 fill_value 参数填充 NaN 值,如下所示:

df.rtruediv(df_other, fill_value=2)



   A     B
0  4.0   NaN
1  10.0  0.5

在这里,请注意两个 NaN 之间的除法仍然会导致 NaN,而不管 fill_value 如何。

相关用法


注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 Pandas DataFrame | rtruediv method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。