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

如何从指定行列读取CSV至Python DataFrame并解决列NaN问题?

解决pandas读取CSV时的列NaN问题

针对你的情况,核心是只读取有效数据所在的列,同时确保表头设置正确,避免因无用列或表头错位导致的NaN问题,具体有两种可行方案:

方案1:读取时直接指定有效列(推荐)

利用usecols参数,只导入你需要的第3-5列(对应表格里的First Name、Last Name、Age列,列索引从0开始为2、3、4),同时指定表头在原CSV的第5行(对应Excel的第6行):

import pandas as pd

target_hcp = pd.read_csv(
    r"C:\Users\Downloads\EMD Data\Target List\HCP List.csv",
    header=5,  # 将原CSV的第6行(Excel行号)设为表头
    usecols=[2, 3, 4]  # 仅读取第3、4、5列(索引从0计数)
)
target_hcp.head()

方案2:读取后删除无用列

如果已经导入了全部列,直接删除前两列(Column A和Column B)即可:

import pandas as pd

# 注意:这里只跳过前5行(0-4),保留第5行作为表头
target_hcp = pd.read_csv(
    r"C:\Users\Downloads\EMD Data\Target List\HCP List.csv",
    skiprows=[0,1,2,3,4]
)
# 删除前两列
target_hcp = target_hcp.drop(target_hcp.columns[[0, 1]], axis=1)
target_hcp.head()

关键提醒

你之前的代码用skiprows=[0,1,2,3,4,5]会跳过表头行(原CSV的第6行),导致pandas把数据行当成表头,这可能是引发列异常的隐藏原因,记得调整skiprows或header参数确保表头正确。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 16:10:25