xinrong-databricks commented on a change in pull request #32785:
URL: https://github.com/apache/spark/pull/32785#discussion_r647616907



##########
File path: python/pyspark/pandas/data_type_ops/base.py
##########
@@ -52,33 +52,42 @@
     from pyspark.pandas.series import Series  # noqa: F401 (SPARK-34943)
 
 
-def is_valid_operand_for_numeric_arithmetic(operand: Any, *, allow_bool: bool 
= True) -> bool:
-    """Check whether the operand is valid for arithmetic operations against 
numerics."""
+def is_valid_operand_for_numeric_arithmetic(
+    operand: Any, *, allow_bool_index_ops: bool = True, allow_bool: bool = True

Review comment:
       There is a case `allow_bool_index_ops` is `False`, whereas `allow_bool` 
is `True`, for example
   ```py
   >>> ps.Series([True, False, True]) + ps.Series([True, False, True])
   Traceback (most recent call last):
   ...
   TypeError: Addition can not be applied to booleans and the given type.
   
   >>> ps.Series([True, False, True]) + True
   0    True
   1    True
   2    True
   dtype: bool
   ```
   
   There is a case `allow_bool_index_ops` and `allow_bool` are both `True`, for 
example
   ```py
   >>> ps.Series([1, 2, 3]) + ps.Series([True, False, True])
   0    2
   1    2
   2    4
   dtype: int64
   >>> ps.Series([1, 2, 3]) + True
   0    2
   1    3
   2    4
   dtype: int64
   ```
   
   There is a case `allow_bool_index_ops` and `allow_bool` are both `False`, 
for example
   ```py
   >> ps.Series([True, False, True]) - ps.Series([True, False, True])
   Traceback (most recent call last):
   ...
   TypeError: Subtraction can not be applied to booleans and the given type.
   >>> ps.Series([True, False, True]) - True
   Traceback (most recent call last):
   ...
   TypeError: Subtraction can not be applied to booleans and the given type.
   
   ```
   
   Does that answer your question?




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to