python - 查看非常大的 CSV 文件的一部分?

标签 python excel csv

我有一个约 1.0gb 的 CSV 文件,当尝试将其加载到 Excel 中进行查看时,Excel 崩溃了。我不知道该文件的架构,因此我很难将其加载到 R 或 Python 中。该文件包含餐厅评论,其中有逗号。

如何在 Windows 记事本或 Excel 中仅打开文件的一部分(例如前 100 行,或 1.0mb 的大小)?

最佳答案

在我的 Excel 版本中,打开的对话框似乎没有提供“仅读取这些行”选项,仅提供从行开始(我猜用于跳过标题)。

因此,如果您的平台上没有头二进制文件,但 python 适合您的情况的简单工作解决方案应该是(硬编码 100 行又名行):

#! /usr/bin/env python
from __future__ import print_function

import sys

LINE_COUNT = 100


def main():
    """Do the thing."""
    if len(sys.argv) != 3:
        sys.exit("Usage: InFIle OutHead100File")
    in_name, out_name = sys.argv[1:3]
    print("Simple head(100)[%s] -> %s ..." % (in_name, out_name))
    with open(in_name, 'rt') as f_in, open(out_name, 'wt') as f_out:
        for n in range(LINE_COUNT):
            f_out.write(f_in.readline())

if __name__ == '__main__':
    main()

并且可以调用上面的代码(假设存储在脚本文件 so_x_head_100.py 中,并且给定文件 huge.csv 应该将前 100 行复制到文件 100.csv):

$ python2 ./so_x_head_100.py huge.csv 100.csv
Simple head(100)[huge.csv] -> 100.csv ...

现在在 100.csv 中,有 huge.csv 的前 100 行。

关于python - 查看非常大的 CSV 文件的一部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38204346/

相关文章:

python - sympy:手动修改表达式

VBA - 获取任务栏应用程序

Linux 庆典 : Combine two csv files with different headers

120 MB CSV 文件的 String.Split() 上的 .NET System.OutOfMemoryException

Python csv.reader 自动转换 ISO 日期?

python - 双重或更多多重处理?

python - 保留 pandas 数据框中的原始值

python - 在 Python Dulwich 中向远程添加标签/推送标签

java - 使用 MS Excel 2007 将 excel 文件中的数据转换为 xml

excel - 有哪些免费的 Microsoft Excel 替代品可用于编辑 .xlsx 格式?