如何为 Pandas 数据框中的特定列应用 LabelEncoder
How to apply LabelEncoder for a specific column in Pandas dataframe
我有一个由 dataframe 加载的数据集,其中 class 标签需要使用来自 scikit-learn 的 LabelEncoder
进行编码。 label
列是 class 标签列,它具有以下 classes:
[‘Standing’, ‘Walking’, ‘Running’, ‘null’]
为了执行标签编码,我尝试了以下但它不起作用。我该如何解决?
from sklearn import preprocessing
import pandas as pd
df = pd.read_csv('dataset.csv', sep=',')
df.apply(preprocessing.LabelEncoder().fit_transform(df['label']))
您可以尝试以下方法:
le = preprocessing.LabelEncoder()
df['label'] = le.fit_transform(df.label.values)
或者以下也可以:
df['label'] = le.fit_transform(df['label'])
它将用编码标签替换数据框中的原始 label
值。
您还可以这样做:
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
df.col_name= le.fit_transform(df.col_name.values)
其中 col_name = 您要标记编码的特征
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
X[:, 2] = le.fit_transform(X[:, 2])
如果您想更改 CSV 数据中的特定列,这可能会有所帮助
我有一个由 dataframe 加载的数据集,其中 class 标签需要使用来自 scikit-learn 的 LabelEncoder
进行编码。 label
列是 class 标签列,它具有以下 classes:
[‘Standing’, ‘Walking’, ‘Running’, ‘null’]
为了执行标签编码,我尝试了以下但它不起作用。我该如何解决?
from sklearn import preprocessing
import pandas as pd
df = pd.read_csv('dataset.csv', sep=',')
df.apply(preprocessing.LabelEncoder().fit_transform(df['label']))
您可以尝试以下方法:
le = preprocessing.LabelEncoder()
df['label'] = le.fit_transform(df.label.values)
或者以下也可以:
df['label'] = le.fit_transform(df['label'])
它将用编码标签替换数据框中的原始 label
值。
您还可以这样做:
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
df.col_name= le.fit_transform(df.col_name.values)
其中 col_name = 您要标记编码的特征
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
X[:, 2] = le.fit_transform(X[:, 2])
如果您想更改 CSV 数据中的特定列,这可能会有所帮助