DataFrame.div(self,other,axis ='columns',level = None,fill_value = None)
DataFrame.rdiv(self, other, axis='columns', level=None, fill_value=None) [source]
获取数dataframe和其他元素的浮点除法(二元运算符truediv)。
相当于,但支持将fill_value替换为其中一个输入中的缺失数据。使用反向版本,rtruediv
。dataframe/other
在灵活的包装器(add,sub,mul,div,mod,pow)中算术运算符:+,-,*,/,//,%,**
。
参数: | other : 标量 (scalar),序列(sequence),Series或DataFrame 任何单个或多个元素数据结构或类似列表的对象。 axis : {0 或 ‘index’, 1 或 ‘columns’} 是否通过索引 (0 or ‘index’) 或列(1 或 ‘columns’)进行比较。 对于Series输入,轴匹配 level : 跨级别广播,匹配传递的 fill_value : 在计算之前使用此值填充现有缺失(NaN) 值以及成功 如果缺少相应 |
返回: | DataFrame 算术运算的结果。 |
Note
不匹配的指数将合并在一起。
例子
1)与标量相除
import pandas as pd
# 创建示例 DataFrame
df = pd.DataFrame({
'A': [10, 20, 30],
'B': [40, 50, 60]
})
# 显示原始 DataFrame
print("原始 DataFrame:")
print(df)
# 与标量相除
result_scalar = df.div(10)
print("\n与标量相除:")
print(result_scalar)
2)与 Series 相除
import pandas as pd
# 创建示例 DataFrame
df = pd.DataFrame({
'A': [10, 20, 30],
'B': [40, 50, 60]
})
# 显示原始 DataFrame
print("原始 DataFrame:")
print(df)
# 创建一个 Series
s = pd.Series([1, 2])
# 与 Series 相除(会自动广播)
result_series = df.div(s, axis=0)
print("\n与 Series 相除:")
print(result_series)
3)与另一个 DataFrame 相除
import pandas as pd
# 创建示例 DataFrame
df = pd.DataFrame({
'A': [10, 20, 30],
'B': [40, 50, 60]
})
# 显示原始 DataFrame
print("原始 DataFrame:")
print(df)
# 创建另一个 DataFrame
df2 = pd.DataFrame({
'A': [2, 5, 10],
'B': [4, 10, 15]
})
# 与另一个 DataFrame 相除
result_df = df.div(df2)
print("\n与另一个 DataFrame 相除:")
print(result_df)
4)按级别除以 MultiIndex
import pandas as pd
# 创建示例 DataFrame
df = pd.DataFrame({
'angles': [0, 3, 4],
'degrees': [360, 180, 360]
}, index=['circle', 'triangle', 'rectangle'])
# 创建带有 MultiIndex 的 DataFrame
df_multindex = pd.DataFrame({
'angles': [0, 3, 4, 4, 5, 6],
'degrees': [360, 180, 360, 360, 540, 720]
}, index=[['A', 'A', 'A', 'B', 'B', 'B'], ['circle', 'triangle', 'rectangle', 'square', 'pentagon', 'hexagon']])
print("带有 MultiIndex 的 DataFrame:")
print(df_multindex)
# 按级别除以 MultiIndexprint("\n按级别除以 MultiIndex:")
result = df.div(df_multindex, level=1, fill_value=0)
print(result)