You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python K-NN分类中如何完整打印测试集与预测值?

解决Pandas打印Series时显示省略号的问题

嘿,我知道你在调试K-NN分类代码的时候,遇到了Pandas只显示部分y_test内容(中间用省略号替代)的问题——这其实是Pandas默认的输出优化设置在搞鬼,它会自动截断过长的Series来避免输出太杂乱。下面给你几个简单可行的解决办法:

  • 临时调整Pandas显示设置,一次性显示所有内容
    在打印y_test和y_pred之前,添加几行代码修改Pandas的显示参数:

    import pandas as pd
    # 设置显示所有行,None表示不限制行数
    pd.set_option('display.max_rows', None)
    # 如果后续需要打印完整DataFrame,也可以加上这行显示所有列
    pd.set_option('display.max_columns', None)
    

    之后再执行print(y_pred)和print(y_test),就能看到完整的数据集内容,不会出现省略号了。如果之后想恢复默认设置,可以执行:

    pd.reset_option('display.max_rows')
    pd.reset_option('display.max_columns')
    
  • 转换为Python列表输出
    如果你不想修改Pandas的全局设置,直接把Series转换成普通列表再打印也能解决问题:

    print(list(y_pred))
    print(list(y_test))
    

    这种方式的好处是只影响当前这两个变量的输出,不会改变其他Pandas对象的显示格式。

  • 使用Series的to_string()方法
    针对Pandas Series对象,还可以直接调用to_string()方法来获取完整的字符串表示:

    print(y_pred.to_string())
    print(y_test.to_string())
    

    这个方法同样能输出完整内容,而且操作起来更直接,不需要修改全局配置。

内容的提问来源于stack exchange,提问作者user9246475

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 06:36:07