aboutsummaryrefslogtreecommitdiff
path: root/python/pyspark/sql.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/pyspark/sql.py')
-rw-r--r--python/pyspark/sql.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/python/pyspark/sql.py b/python/pyspark/sql.py
index b31a82f9b1..7daf306f68 100644
--- a/python/pyspark/sql.py
+++ b/python/pyspark/sql.py
@@ -883,6 +883,10 @@ def _create_cls(dataType):
# create property for fast access
locals().update(_create_properties(dataType.fields))
+ def asDict(self):
+ """ Return as a dict """
+ return dict(zip(self.__FIELDS__, self))
+
def __repr__(self):
# call collect __repr__ for nested objects
return ("Row(%s)" % ", ".join("%s=%r" % (n, getattr(self, n))
@@ -1466,6 +1470,14 @@ class Row(tuple):
else:
raise ValueError("No args or kwargs")
+ def asDict(self):
+ """
+ Return as an dict
+ """
+ if not hasattr(self, "__FIELDS__"):
+ raise TypeError("Cannot convert a Row class into dict")
+ return dict(zip(self.__FIELDS__, self))
+
# let obect acs like class
def __call__(self, *args):
"""create new Row object"""