【发布时间】:2019-02-22 05:54:12
【问题描述】:
我有以下代码
train_X, test_X, train_y, test_y = train_test_split(X.as_matrix(), y.as_matrix(), test_size=0.25)
其中X 是一个DataFrame,y 是一个系列。
调用上述函数时,我收到以下警告:
/opt/conda/lib/python3.6/site-packages/ipykernel_launcher.py:1:FutureWarning:方法 .as_matrix 将在未来版本中删除。请改用 .values。
"""启动 IPython 内核的入口点。
然后我尝试使用警告中提到的.values 进行更改:
train_X, test_X, train_y, test_y = train_test_split(X.values(), y.values(), test_size=0.25)
但我收到以下错误:
TypeError Traceback(最近一次调用最后一次) 在 () ----> 1 train_X, test_X, train_y, test_y = train_test_split(X.values(), y.values(), test_size=0.25)
TypeError: 'numpy.ndarray' 对象不可调用
我该如何解决这个问题?
【问题讨论】:
-
这应该就像从
values()中删除()一样简单。 -
你是对的,我的错..
-
从 pandas 0.24 开始,使用
df.to_numpy(),而不是.values或as_matrix()。 -
pandas.pydata.org/pandas-docs/version/0.23.1/generated/… 虽然他们建议使用
.values,正如@cs95 提到的那样,.to_numpy()对我有用
标签: python scikit-learn