當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python pyspark Series.dot用法及代碼示例


本文簡要介紹 pyspark.pandas.Series.dot 的用法。

用法:

Series.dot(other: Union[Series, pyspark.pandas.frame.DataFrame]) → Union[int, float, bool, str, bytes, decimal.Decimal, datetime.date, datetime.datetime, None, pyspark.pandas.series.Series]

計算 Series 和 other 列之間的點積。

此方法計算 Series 與另一個 Series 之間的點積,或者 Series 與 DataFrame 的每一列之間的點積。

它也可以在 Python >= 3.5 中使用 self @ other 調用。

注意

當兩個 Series 的索引未對齊時,此 API 與 pandas 略有不同。為了與 pandas 匹配,它需要讀取整個數據,例如計數。 pandas 引發異常;然而,pandas-on-Spark 隻是通過忽略與 NaN 的不匹配來繼續和執行。

>>> pdf1 = pd.Series([1, 2, 3], index=[0, 1, 2])
>>> pdf2 = pd.Series([1, 2, 3], index=[0, 1, 3])
>>> pdf1.dot(pdf2)  
...
ValueError: matrices are not aligned
>>> psdf1 = ps.Series([1, 2, 3], index=[0, 1, 2])
>>> psdf2 = ps.Series([1, 2, 3], index=[0, 1, 3])
>>> psdf1.dot(psdf2)  
5

參數

other係列,數據幀。

另一個計算其列的點積的對象。

返回

標量,係列

如果 other 是 Series,則返回 Series 和 other 的點積,如果 other 是 DataFrame,則返回 Series 和 other 的每一行的點積。

注意

如果 other 是 Series 或 DataFrame,則 Series 和 other 必須共享相同的索引。

例子

>>> s = ps.Series([0, 1, 2, 3])
>>> s.dot(s)
14
>>> s @ s
14
>>> psdf = ps.DataFrame({'x': [0, 1, 2, 3], 'y': [0, -1, -2, -3]})
>>> psdf
   x  y
0  0  0
1  1 -1
2  2 -2
3  3 -3
>>> with ps.option_context("compute.ops_on_diff_frames", True):
...     s.dot(psdf)
...
x    14
y   -14
dtype: int64

相關用法


注:本文由純淨天空篩選整理自spark.apache.org大神的英文原創作品 pyspark.pandas.Series.dot。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。