Pandas DataFrame.rmul(~) 方法將標量、序列、Series 或 DataFrame 與源 DataFrame 中的值相乘,即:
other * DataFrame
請注意,這與 DataFrame.mul(~) 相反,它執行以下操作:
DataFrame * other
注意
除非您使用參數 axis 、 level 和 fill_value ,否則 rmul(~) 相當於使用 * 運算符執行乘法。
參數
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 和 other 的乘積產生的新 DataFrame 。
例子
基本用法
考慮以下數據幀:
df = pd.DataFrame({"A":[2,3], "B":[4,5]})
df_other = pd.DataFrame({"A":[6,7], "B":[8,9]})
A B | A B
0 2 4 | 0 6 8
1 3 5 | 1 7 9
計算他們的產品產量:
df.rmul(df_other)
A B
0 12 32
1 21 45
請注意,這相當於以下內容:
df_other * df
A B
0 12 32
1 21 45
廣播
考慮以下 DataFrame :
df = pd.DataFrame({"A":[2,3], "B":[4,5]})
df
A B
0 2 4
1 3 5
行乘法
默認情況下, axis=1 ,這意味著 other 將為 df 中的每一行廣播:
df.rmul([10,100]) # axis=1
A B
0 20 400
1 30 500
在這裏,我們進行以下逐元素乘法:
10*2 100*4
10*3 100*5
逐列乘法
要為 df 中的每一列廣播 other,請像這樣設置 axis=0:
df.mul([10,100], axis=0)
A B
0 20 40
1 300 500
在這裏,我們進行以下逐元素乘法:
10*2 10*4
100*3 100*5
指定fill_value
考慮以下帶有缺失值的DataFrames:
df = pd.DataFrame({"A":[2,np.NaN], "B":[np.NaN,5]})
df_other = pd.DataFrame({"A":[10,20],"B":[np.NaN,np.NaN]})
A B | A B
0 2.0 NaN | 0 10 NaN
1 NaN 5.0 | 1 20 NaN
默認情況下,當我們使用 rmul(~) 計算乘積時,任何使用 NaN 的操作都會產生 NaN :
df.rmul(df_other)
A B
0 20.0 NaN
1 NaN NaN
我們可以在使用 fill_value 參數執行乘法之前填充 NaN 值:
df.rmul(df_other, fill_value=100)
A B
0 20.0 NaN
1 2000.0 500.0
請注意,無論 fill_value 為何,兩個 NaN 的乘積是 NaN 。
相關用法
- Python Pandas DataFrame rmod方法用法及代碼示例
- 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 | rmul method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。
