Pandas 如何将标量应用于系列进行整数除法
整数除法也被称为地板除法,在Python中表示为//。它是一个二元操作符,执行逐元素的除法操作并返回一个新的值。
在Pandas系列类中,有一个名为floordiv()的方法,用于在系列对象和标量之间执行逐元素整数除法操作。这个方法也可以用于两个系列对象之间的地板除法操作。
该方法的输出是一个具有操作结果的新系列。它有三个参数,分别是fill_value、other和level。other参数就是第二个输入(另一个系列或一个标量)。fill_value参数用于在执行floordiv()方法时,用指定的值替换缺失值,默认情况下,该参数用NaN填充缺失值。
示例1
在下面的示例中,我们将通过一个标量值“2”对系列对象进行地板除法操作。
import pandas as pd
# create pandas Series
series = pd.Series([9, 25, 14, 82])
print("Series object:",series)
# apply floordiv()
print("Output:")
print(series.floordiv(2))
输出
下面是输出结果:
Series object:
0 9
1 25
2 14
3 82
dtype: int64
Output:
0 4
1 12
2 7
3 41
dtype: int64
在上述块中,我们可以看到初始系列对象和结果系列对象。第二个是系列和标量值“2”之间的逐元素整数除法操作的结果。
示例2
在以下示例中,我们将对包含一些NaN值的系列对象应用整数除法操作。
import pandas as pd
import numpy as np
# create pandas Series
series = pd.Series([87, 5, None, 42, np.nan, 61])
print("Series object:",series)
# apply floordiv()
print("Output without replacing missing values:")
print(series.floordiv(other=2))
# apply floordiv() method with fill_value parameter
print("Output with replacing missing values by 5:")
print(series.floordiv(other=2, fill_value=5))
输出
输出如下:
Series object:
0 87.0
1 5.0
2 NaN
3 42.0
4 NaN
5 61.0
dtype: float64
Output without replacing missing values:
0 43.0
1 2.0
2 NaN
3 21.0
4 NaN
5 30.0
dtype: float64
Output with replacing missing values by 5:
0 43.0
1 2.0
2 2.0
3 21.0
4 2.0
5 30.0
dtype: float64
最初,我们对一个系列对象进行了以标量值2为除数的地板除法操作,没有替换缺失值。之后,我们再次对同一个系列应用了floordiv()方法,其中标量值2和缺失值5(fill_value=5)。
以上输出结果均显示在上述输出块中。