Python 如何分解熊猫中选定的列

Python 如何分解熊猫中选定的列,python,pandas,Python,Pandas,我想实现一个自动为对象指定数值的函数。 这是我的密码: column_list = ['datum', 'parameter_name', 'sample_duration', 'pollutant_standard', 'units_of_measure'] def gnumeric_func(data, columns): data[columns] = pd.factorize(data.columns)[0] data = pd.DataFrame(data, column_l

我想实现一个自动为对象指定数值的函数。 这是我的密码:

column_list = ['datum', 'parameter_name', 'sample_duration', 'pollutant_standard', 'units_of_measure']
def gnumeric_func(data, columns):
    data[columns] = pd.factorize(data.columns)[0]

data = pd.DataFrame(data, column_list)
gnumeric_func(data, column_list)
怎么了?

使用:

def gnumeric_func (data, columns):
  data[columns] = data[columns].apply(lambda x: pd.factorize(x)[0])
  return data
对于所有列:

def gnumeric_func (data):
  data = data.apply(lambda x: pd.factorize(x)[0])
  return data
使用:

对于所有列:

def gnumeric_func (data):
  data = data.apply(lambda x: pd.factorize(x)[0])
  return data

它做错了什么?有错误吗?它做错了什么?有错误吗?对输入的
数据进行变异并返回它是一种好的做法吗?@JoeCondron-我认为在python中这是很常见的,但如果这是一种好的做法,对我来说是一个很难回答的问题。我真的不知道。对输入的
数据进行变异并返回它是一种好的做法吗?@JoeCondron-我认为在python中这是很常见的,但如果这是一种好的做法,对我来说是一个很难回答的问题。我真的不知道。