我正在创建一个SVM模型来支持我的机器学习模型。“将来的版本中将删除方法.as_matrix。请改用.values”。运行我的代码后错误不断出现。我该怎么办?
我尝试按照其说明将其更改为.values,但是,编译器说TypeError:'numpy.ndarray'对象不可调用
代码如下:
d = pd.read_csv('voice.csv')
d.head()
sns.lmplot('IQR','meanfun', data=d, hue='label',
palette='Set1', fit_reg=False, scatter_kws={'s': 1})
ERROR --> IQR_meanfun = d[['IQR','meanfun']].as_matrix()
type_label = np.where(d['Type']=='Male', 0, 1)
答案 0 :(得分:0)
TLDR; as_matrix()
是方法,values
是属性。
但是两者都返回2D数组。 as_matrix()
已被弃用,因此使用它是不可能的。剩下的就是values
,它的用法如下:
IQR_meanfun = d[['IQR','meanfun']].values
(您可能叫.values()
,表现为TypeError
。)
如果您运行的是v0.24或更高版本,则不再推荐使用.values
从DataFrame中提取数组。参见the docs和this answer which goes into this in gory detail.
# Recommended method from v0.24 onwards,
# IQR_meanfun = d[['IQR','meanfun']].to_numpy(copy=True)
# Same as,
IQR_meanfun = d[['IQR','meanfun']].to_numpy()