我想将我的分类数据转移到SVM中,以基于数百个特征(如身高,年龄等)来预测个体的权重。
目前,我的分组数据(我使用groupby(pd.cut))包含权重作为其数据的一部分。此外,我的数据包括一些nan。我想知道:
- 如何将我的数据分成X和Y(标签)
- 哪个SVM最适合我的目标
- 如何用平均值替换nan(我相信我需要使用Imputer模块?)
提前感谢,我也是一个新的编程作为一个整体,所以请假设我只知道基础知识。
-
我假设你有一个X的形状[样本,特征]。在这种情况下,您需要知道权重特征的索引,然后提取它。像这样的东西应该可以工作。
y = Xorg[:,weightind] X = np.delete(X, weightind, 1)
-
权值为连续变量。除非你想把它转换成分类类别(例如,"瘦"、"正常"、"重"),否则你需要一个回归器。我不知道你为什么这么热衷于支持向量机,但有一个支持向量机回归器——SVR。如果您的问题是关于SVR的内核-您可以尝试使用GridSearchCV。
-
是的,您将需要输入器模型。一个简单的用法(用mean代替)是:
Ximp = Imputer().fit_transform(X)