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

如何将Jupyter Notebook单元格完整输出写入CSV文件(无省略号)

解决Jupyter Notebook导出完整数据到CSV避免省略号的问题

嘿,这个问题我之前也碰到过!原因是当你用str(x)把pandas Series转成字符串时,pandas默认会为了界面显示美观,截断过长的输出内容,所以才会出现省略号。别担心,有两种办法解决,其中第一种是最优选择:

方法1:使用pandas自带的to_csv方法(强烈推荐)

这是最专业、最稳妥的方式,pandas的to_csv方法专门用于导出数据到CSV格式,它会完整输出所有数据,不会受显示限制截断,还能自动处理CSV的格式规范。

替换你原来的代码为:

# 先完成分组和排序逻辑
group = df.groupby(['id','no_of_absents']).size().groupby(level=0).size()
x = group.sort_values(ascending=False, kind='quicksort')

# 直接用to_csv导出到文件
x.to_csv("output.csv", header=False)
  • 加上header=False是因为你的输出里没有列名,如果需要列名,可以把参数改成header=['count']之类的自定义名称。

方法2:取消pandas的显示限制后转字符串(不推荐,仅作参考)

如果你一定要用open文件的方式写入,那需要先取消pandas对显示行数的限制,再用to_string()方法转换(而不是直接用str(x)):

import pandas as pd

# 取消pandas的显示行数限制
pd.options.display.max_rows = None

with open("output.csv","w")as output:
    group = df.groupby(['id','no_of_absents']).size().groupby(level=0).size()
    x = group.sort_values(ascending=False, kind='quicksort')
    # 用to_string()替代str(x)
    output.write(x.to_string())

⚠️ 注意:这种方法的输出是空格分隔的文本,严格来说不符合CSV的逗号分隔规范,而且当数据量很大时(比如25000条),效率不如to_csv高,所以优先选第一种方法。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.12 05:34:58