Pandas DataFrame.rmod(~)
方法計算源 DataFrame 和另一個標量、序列、Series 或 DataFrame 中的值的模,即:
other % DataFrame
請注意,這與 DataFrame.mod(~)
正好相反,它的作用是:
DataFrame % other
注意
除非您使用參數 axis
、 level
和 fill_value
,否則 rmod(~)
相當於使用 %
運算符計算模數。
參數
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。
例子
基本用法
考慮以下數據幀:
df = pd.DataFrame({"A":[2,3], "B":[4,5]})
df_other = pd.DataFrame({"A":[9,8], "B":[7,6]})
A B | A B
0 2 4 | 0 9 7
1 3 5 | 1 8 6
計算模:
df.rmod(df_other)
A B
0 1 3
1 2 1
在這裏,我們計算以下逐元素模:
9%2 7%4
8%3 6%5
請注意,這相當於:
df_other % df
A B
0 1 3
1 2 1
廣播
考慮以下 DataFrame :
df = pd.DataFrame({"A":[3,4], "B":[5,6]})
df
A B
0 3 5
1 4 6
逐行取模
默認情況下, axis=1
,這意味著 other
將為 df
中的每一行廣播:
df.rmod([8,9]) # axis=1
A B
0 2 4
1 0 3
在這裏,我們計算以下逐元素模:
8%3 9%5
8%4 9%6
逐列取模
要為 df
中的每一列廣播 other
,請像這樣設置 axis=0
:
df.rmod([8,9], axis=0)
A B
0 2 3
1 1 3
在這裏,我們計算以下逐元素模:
8%3 8%5
9%4 9%6
指定fill_value
考慮以下 DataFrame :
df = pd.DataFrame({"A":[2,np.NaN], "B":[np.NaN,3]})
df_other = pd.DataFrame({"A":[8,9],"B":[np.NaN,np.NaN]})
A B | A B
0 2.0 NaN | 0 8 NaN
1 NaN 3.0 | 1 9 NaN
默認情況下,當我們使用 rmod(~)
計算模數時,任何使用 NaN
的操作都會產生 NaN
:
df.rmod(df_other)
A B
0 0.0 NaN
1 NaN NaN
在使用 fill_value
參數計算模數之前,我們可以填充 NaN
值:
df.rmod(df_other, fill_value=5)
A B
0 0.0 NaN
1 4.0 2.0
在這裏,請注意當運算涉及兩個 NaN
時,無論 fill_value
為何,結果模數仍將是 NaN
。
相關用法
- Python Pandas DataFrame rmul方法用法及代碼示例
- Python Pandas DataFrame rank方法用法及代碼示例
- Python Pandas DataFrame rdiv方法用法及代碼示例
- Python Pandas DataFrame radd方法用法及代碼示例
- Python PySpark DataFrame repartition方法用法及代碼示例
- Python PySpark DataFrame replace方法用法及代碼示例
- Python PySpark DataFrame rdd屬性用法及代碼示例
- 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 rename方法用法及代碼示例
- Python Pandas DataFrame empty屬性用法及代碼示例
- Python Pandas DataFrame pop方法用法及代碼示例
- Python Pandas DataFrame nsmallest方法用法及代碼示例
- Python Pandas DataFrame sample方法用法及代碼示例
注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 Pandas DataFrame | rmod method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。