You need to enable JavaScript to run this app. 如何使用python datatable的fread()加载csv文件的指定列子集
优惠活动
大模型
产品
解决方案
定价
更多

如何使用python datatable的fread()加载csv文件的指定列子集

datatable fread 筛选指定列加载方案

你可以通过fread()的columns参数传字典实现仅加载目标列的需求,该参数支持同时完成列筛选和列重命名,未出现在字典里的列会被直接跳过不会加载,完全匹配pandasusecols参数的使用场景,具体用法如下:

按列名筛选(无需重命名)

如果仅需要筛选指定列、不需要修改列名,字典的键和值都写原列名即可:

import datatable as dt

# 等价于pandas的 pd.read_csv("large_file.csv", usecols=["col1", "col3", "col5"])
df = dt.fread(
    "large_file.csv",
    columns={
        "col1": "col1",
        "col3": "col3",
        "col5": "col5"
    }
)

按列名筛选+重命名

如果需要同时修改目标列的名称,把字典值改为你需要的新列名即可:

df = dt.fread(
    "large_file.csv",
    columns={
        "col1": "user_id",
        "col3": "user_age",
        "col5": "pay_amount"
    }
)

按列索引筛选

如果不知道列名,要按列的位置筛选(列索引从0开始计数),把字典键改为对应列的索引即可:

# 仅加载第0、2、4列
df = dt.fread(
    "large_file.csv",
    columns={
        0: "col_0",
        2: "col_2",
        4: "col_4"
    }
)

以上所有写法都不会加载未指定的列,非常适合超大CSV文件的轻量化读取,不会产生额外的内存开销。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 09:54:03