nodes: 0, module; 1, function_definition; 2, function_name:value_counts; 3, parameters; 4, block; 5, identifier:expr; 6, default_parameter; 7, default_parameter; 8, default_parameter; 9, expression_statement; 10, expression_statement; 11, expression_statement; 12, return_statement; 13, identifier:sort; 14, True; 15, identifier:ascending; 16, False; 17, identifier:dropna; 18, False; 19, comment:"""
      Return object containing counts of unique values.
  
      The resulting object will be in descending order so that the first element is the most frequently-occuring
      element. Exclude NA values by default
  
      :param expr: sequence
      :param sort: if sort
      :type sort: bool
      :param dropna: Don’t include counts of None, default False
      :return: collection with two columns
      :rtype: :class:`odps.df.expr.expressions.CollectionExpr`
      """; 20, assignment; 21, assignment; 22, call; 23, identifier:names; 24, list; 25, identifier:typos; 26, list; 27, identifier:ValueCounts; 28, argument_list; 29, attribute; 30, string; 31, attribute; 32, attribute; 33, keyword_argument; 34, keyword_argument; 35, keyword_argument; 36, keyword_argument; 37, keyword_argument; 38, identifier:expr; 39, identifier:name; 40, string_content:count; 41, identifier:expr; 42, identifier:dtype; 43, identifier:types; 44, identifier:int64; 45, identifier:_input; 46, identifier:expr; 47, identifier:_schema; 48, call; 49, identifier:_sort; 50, identifier:sort; 51, identifier:_ascending; 52, identifier:ascending; 53, identifier:_dropna; 54, identifier:dropna; 55, attribute; 56, argument_list; 57, identifier:Schema; 58, identifier:from_lists; 59, identifier:names; 60, identifier:typos
code: def value_counts(expr, sort=True, ascending=False, dropna=False):
      """
      Return object containing counts of unique values.
  
      The resulting object will be in descending order so that the first element is the most frequently-occuring
      element. Exclude NA values by default
  
      :param expr: sequence
      :param sort: if sort
      :type sort: bool
      :param dropna: Don’t include counts of None, default False
      :return: collection with two columns
      :rtype: :class:`odps.df.expr.expressions.CollectionExpr`
      """
  
      names = [expr.name, 'count']
      typos = [expr.dtype, types.int64]
      return ValueCounts(_input=expr, _schema=Schema.from_lists(names, typos),
                         _sort=sort, _ascending=ascending, _dropna=dropna)