You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Christos Iraklis Tsatsoulis (JIRA)" <ji...@apache.org> on 2015/12/16 19:22:46 UTC
[jira] [Created] (SPARK-12372) Unary operator "-" fails for MLlib
vectors
Christos Iraklis Tsatsoulis created SPARK-12372:
---------------------------------------------------
Summary: Unary operator "-" fails for MLlib vectors
Key: SPARK-12372
URL: https://issues.apache.org/jira/browse/SPARK-12372
Project: Spark
Issue Type: Bug
Components: MLlib, PySpark
Affects Versions: 1.5.2
Reporter: Christos Iraklis Tsatsoulis
Consider the following snippet in pyspark 1.5.2:
{code:none}
>>> from pyspark.mllib.linalg import Vectors
>>> x = Vectors.dense([0.0, 1.0, 0.0, 7.0, 0.0])
>>> x
DenseVector([0.0, 1.0, 0.0, 7.0, 0.0])
>>> -x
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: func() takes exactly 2 arguments (1 given)
>>> y = Vectors.dense([2.0, 0.0, 3.0, 4.0, 5.0])
>>> y
DenseVector([2.0, 0.0, 3.0, 4.0, 5.0])
>>> x-y
DenseVector([-2.0, 1.0, -3.0, 3.0, -5.0])
>>> -y+x
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: func() takes exactly 2 arguments (1 given)
>>> -1*x
DenseVector([-0.0, -1.0, -0.0, -7.0, -0.0])
{code}
Clearly, the unary operator {{-}} (minus) for vectors fails, giving errors for expressions like {{-x}} and {{-y+x}}, despite the fact that {{x-y}} behaves as expected.
The last operation, {{-1*x}}, although mathematically "correct", includes minus signs for the zero entries, which again is normally not expected.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org