这是我的问题的重新措辞版本,希望更有意义:
当使用read_csv
隐式索引(即文件中的第一列没有标题)时,一切正常,我得到一个数据框,其索引是文件中的第一列 - 隐式索引列。
但是,如果我指定usecols
为 的参数read_csv
,则隐式索引列将被忽略,并且返回的数据帧具有由 pandas 创建的标准索引(0、1、2、3 等)。
我不能显式传递列表中的索引列,usecols
然后指定index_col
参数,因为隐式索引列没有标题(这就是 pandas 知道它是隐式索引的方式)!
有没有办法解决?
这是原始问题:
我正在尝试读取一个 csv 文件,该文件有一列未命名的行索引,其余列被命名:
|head1|head2|
index1 | data1 | data2 |
当我使用 usecols 读取一定数量的列时,我还想包含行索引。但是,由于这些没有命名,我不能在我的 usecols 列表中包含该字符串。
我尝试过结合使用整数索引和字符串(例如usecols = [0, 'header1', 'header2']
,但这似乎不起作用。
如果我简单地指定ind_col
为 0,它将使用我选择的第一列作为索引列。
那么,如何读取名称列选择(通过 usecols),同时保留文件中的第一个无名列作为我的行索引?