spark-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Reynold Xin (JIRA)" <>
Subject [jira] [Closed] (SPARK-7035) Drop __getattr__ on pyspark.sql.DataFrame
Date Tue, 12 May 2015 03:52:00 GMT


Reynold Xin closed SPARK-7035.
    Resolution: Won't Fix

I'm closing this one for now. We can continue the discussion.

> Drop __getattr__ on pyspark.sql.DataFrame
> -----------------------------------------
>                 Key: SPARK-7035
>                 URL:
>             Project: Spark
>          Issue Type: Sub-task
>          Components: PySpark
>    Affects Versions: 1.4.0
>            Reporter: Kalle Jepsen
> I think the {{\_\_getattr\_\_}} method on the DataFrame should be removed.
> There is no point in having the possibility to address the DataFrames columns as {{df.column}},
other than the questionable goal to please R developers. And it seems R people can use Spark
from their native API in the future.
> I see the following problems with {{\_\_getattr\_\_}} for column selection:
> * It's un-pythonic: There should only be one obvious way to solve a problem, and we can
already address columns on a DataFrame via the {{\_\_getitem\_\_}} method, which in my opinion
is by far superior and a lot more intuitive.
> * It leads to confusing Exceptions. When we mistype a method-name the {{AttributeError}}
will say 'No such column ... '.
> * And most importantly: we cannot load DataFrames that have columns with the same name
as any attribute on the DataFrame-object. Imagine having a DataFrame with a column named {{cache}}
or {{filter}}. Calling {{df.cache()}} will be ambiguous and lead to broken code.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message