当前位置: 首页 > 知识库问答 >
问题:

Python:方法。as_matrix将在未来的版本中被删除。使用值代替[重复]

东深
2023-03-14

我有以下代码

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:未来警告:方法。as_matrix将在未来版本中删除。改为使用值。

“”“启动IPython内核的入口点。

然后我尝试使用进行更改。警告中提到的值

train_X, test_X, train_y, test_y = train_test_split(X.values(), y.values(), test_size=0.25)

但我得到了以下错误:

()----

numpy.ndarray对象不可调用

我如何解决这个问题?

共有3个答案

葛深
2023-03-14

下面是有关警告背后版本控制的一些附加信息。我希望有帮助。

这是因为熊猫版(0.23.4)与Anaconda Python 3.7一起在SQL Server 2019中发布。1.SQL Server 2017附带pandas(0.19.2),它是Anaconda Python 3.5的一部分。2如果未出现此未来警告消息

熊猫。数据帧。自版本0.23以来,as_矩阵已被弃用。0.见公共关系。

如何使用熊猫的例子。DataFrame.values.

江凯风
2023-03-14

根据熊猫0.25.1留档,他们建议更多地使用DataFrame.to_numpy()而不是DataFrame.values()

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.values.html#pandas.DataFrame.values

所以我建议更新如下:

train_X, test_X, train_y, test_y = train_test_split(X.to_numpy(), y.to_numpy(), test_size=0.25)
尉迟明辉
2023-03-14

应该是:

train_X, test_X, train_y, test_y = train_test_split(X.values, y.values, test_size=0.25)

看这个。

 类似资料:
  • 虽然HTTP 1.1规范似乎允许删除请求上的消息体,但似乎表明服务器应该忽略它,因为它没有定义语义。 4.3消息正文 服务器应该在任何请求上读取和转发消息正文;如果请求方法不包括实体正文的定义语义学,那么在处理请求时应该忽略消息正文。 我已经回顾了关于这个话题的一些相关讨论,比如: 实体实体是否允许HTTP删除请求 大多数讨论似乎一致认为,可以允许在删除时提供消息正文,但通常不建议这样做。 此外,

  • 我想删除这个列表中的无值 并得到如下输出

  • 我试图解决这个问题,但我从来没有找到一个对我有效的解决办法。问题是我得到了关于Base64Encoder的警告。没有Base64Encoder还有其他方法可以做到这一点吗? 代码:

  • 问题内容: 我目前有这样的代码: 但是,这可能会在将来导致难以发现的错误,因为读者可能不会注意到上面出现的错误。或者,贡献者可能会错误地添加,而忘记添加。 我如何避免这种陷阱? 问题答案: 这样,实际上是一个“全局”。可以从任何地方对其进行读写。 与字典的替代方法相比,我更喜欢这种方法,因为它可以自动完成变量名。

  • 本文向大家介绍python删除列表中重复记录的方法,包括了python删除列表中重复记录的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python删除列表中重复记录的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的Python程序设计有所帮助。

  • 问题内容: 我有一个配对列表: 我想删除任何重复的地方 所以我们最后只是 如果不是这种情况,我可以对反向对进行内部和外部循环检查,然后追加到列表中,但是我敢肯定,有更多的Python方式可以达到相同的结果。 问题答案: 如果您需要保留列表中元素的顺序,则可以使用函数并使用以下方式设置理解: 或根本不像这样: 另一种方法是使用一个如图所示这里但是请注意,如果您的列表中有不同的元素这只是工作。因为li