【发布时间】:2018-09-24 12:33:45
【问题描述】:
我目前正在尝试使用决策树分类器训练数据集,但我无法让 train_test_split 工作。
从下面的代码中,CS 是目标输出,EN SN JT FT PW YR LO LA 是特征输入。
通过 OHL 的所有变量都是稀疏矩阵格式,而其他变量是直接取自数据帧的数组。
def OHL(x, column): #OneHotEncoder
le = LabelEncoder()
enc = OneHotEncoder()
Labeled = le.fit_transform(x[column].astype(str))
return enc.fit_transform(Labeled.reshape(-1,1))
###------------------------------------------------------------------------
df = pd.read_csv('h1b_kaggle.csv')
df = df.drop(['Unnamed: 0','WORKSITE'],1)
###------------------------------------------------------------------------
CS = OHL(df, 'CASE_STATUS')
EN = OHL(df, 'EMPLOYER_NAME')
SN = OHL(df, 'SOC_NAME')
JT = OHL(df, 'JOB_TITLE')
FT = OHL(df, 'FULL_TIME_POSITION')
PW = np.array(df['PREVAILING_WAGE'])
YR = OHL(df, 'YEAR')
LO = np.array(df['lon'])
LA = np.array(df['lat'])
【问题讨论】:
-
为什么所有这些特性都放在单个变量中而不是单个数组中?这会更容易在 scikit-learn 中处理和使用
-
我试图将它们放入数组中,但它有 MemoryError。
标签: python python-3.x pandas dataframe scikit-learn