Python 熊猫按列索引(非名称)读取csv集合'dtype'

Python 熊猫按列索引(非名称)读取csv集合'dtype',python,pandas,types,Python,Pandas,Types,file.txt有一个标题和四列。但是标题一直在变化 比如: ,'non_standard_header_1','non_standard_header_2','non_standard_header_3' ,kdfjlkjdf, sdfdfd,, ,kdfjlkjwwdf, sdfddffd,, ,kdfjlkjwwdf,, sdfddffd, 我想在pandas中导入file.txt,并且我想将列作为对象导入。直观的方法(对我来说): dtype=[object,object,object

file.txt
有一个标题和四列。但是标题一直在变化

比如:

,'non_standard_header_1','non_standard_header_2','non_standard_header_3'
,kdfjlkjdf, sdfdfd,,
,kdfjlkjwwdf, sdfddffd,,
,kdfjlkjwwdf,, sdfddffd,
我想在pandas中导入
file.txt
,并且我想将列作为
对象导入。直观的方法(对我来说):

dtype=[object,object,object]
如下所示:

    daily_file              = pandas.read_csv('file.txt',
                                              usecols      = [1, 2, 3],
                                              dtype        = [object, object, object])
不起作用,运行上述命令,我得到:

未理解数据类型

如何在导入时设置列
dtype
,而不引用(现有)列名?

pd.read\u csv(…,dtype=object)
将在所有读取的列中全局应用对象dtype,如果这是您要查找的


否则,如果要将数据类型映射到列名,则需要传递形式为
{'col':dtype}
的dict。

几乎:如何将数据类型映射到colunm编号?@user189035尝试更改索引键。但是如果这不起作用,那么我恐怕pandas还不支持它。索引似乎适用于
dtype
,(
use\u cols
具有按名称或索引引用的功能)不确定如果列名与索引重叠会发生什么。不过,我通过实验找到了一种处理方法。给定一个带有单个未标记列的CSV(第一个由
pandas.to_CSV
创建,但未指定索引标签),pandas将名称“Unnamed:0”分配给该列;我能够使用相同的字符串作为
dtype
的dict键,并正确控制列的数据类型。不知道这有多普遍,所以把它和一个正确的“答案”留给其他人。