Beispiel #1
0
 def generate_func(self, serialized_fn):
     pandas_functions, variable_dict, user_defined_funcs = reduce(
         lambda x, y: (
             ','.join([x[0], y[0]]),
             dict(chain(x[1].items(), y[1].items())),
             x[2] + y[2]),
         [operation_utils.extract_user_defined_function(udf, True)
          for udf in serialized_fn.udfs])
     variable_dict['normalize_pandas_result'] = operation_utils.normalize_pandas_result
     generate_func = eval('lambda value: normalize_pandas_result([%s])' %
                          pandas_functions, variable_dict)
     return generate_func, user_defined_funcs
Beispiel #2
0
 def generate_func(self, serialized_fn):
     """
     Generates a lambda function based on udtfs.
     :param serialized_fn: serialized function which contains the proto representation of
                           the Python :class:`TableFunction`
     :return: the generated lambda function
     """
     table_function, variable_dict, user_defined_funcs = \
         operation_utils.extract_user_defined_function(serialized_fn.udfs[0])
     variable_dict['normalize_table_function_result'] = \
         operation_utils.normalize_table_function_result
     generate_func = eval('lambda value: normalize_table_function_result(%s)' % table_function,
                          variable_dict)
     return generate_func, user_defined_funcs
Beispiel #3
0
 def generate_func(self, serialized_fn):
     """
     Generates a lambda function based on udfs.
     :param serialized_fn: serialized function which contains a list of the proto
                           representation of the Python :class:`ScalarFunction`
     :return: the generated lambda function
     """
     scalar_functions, variable_dict, user_defined_funcs = reduce(
         lambda x, y: (
             ','.join([x[0], y[0]]),
             dict(chain(x[1].items(), y[1].items())),
             x[2] + y[2]),
         [operation_utils.extract_user_defined_function(udf) for udf in serialized_fn.udfs])
     generate_func = eval('lambda value: [%s]' % scalar_functions, variable_dict)
     return generate_func, user_defined_funcs