import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
dataset=pd.read_csv('Churn_Modelling.csv')
X=dataset.iloc[:, 3:13]
Y=dataset.iloc[:, 13]
from sklearn.preprocessing import LabelEncoder
label_en1=LabelEncoder()
X.values[:, 1]=label_en1.fit_transform(X.values[:, 1])
label_en2=LabelEncoder()
X.values[:, 2]=label_en2.fit_transform(X.values[:, 2])
我尝试创建虚拟变量,但没有发生。我在编码部分使用X.values,因为我的Spyder版本不支持对象数组,所以让X和Y成为数据帧。我添加了.value,因为它不支持切片术语。我哪里会出错? 我之前创建了一个类似的程序来创建虚拟变量,然后就开始工作了。我不明白为什么这件事没有发生。你知道吗
编辑:
你能把你的一片递给我吗?像这样:
X.iloc[:, 1] = label_en1.fit_transform(X.iloc[:, 1])
实际上,您需要将数据帧精简为一个数组
与其访问
X.values
,不如直接访问功能/列名:X['col_name'] = label_en1.fit_transform(X['col_name'])
相关问题 更多 >
编程相关推荐