以下命令序列有效(我丢失了数据的第一行-no header = None present-,但至少已加载):
df = pd.read_csv(filename, 
                 usecols=range(0, 42))
df.columns = ['YR', 'MO', 'DAY', 'HR', 'MIN', 'SEC', 'HUND',
                        'ERROR', 'RECTYPE', 'LANE', 'SPEED', 'CLASS',
                        'LENGTH', 'GVW', 'ESAL', 'W1', 'S1', 'W2', 'S2',
                        'W3', 'S3', 'W4', 'S4', 'W5', 'S5', 'W6', 'S6',
                        'W7', 'S7', 'W8', 'S8', 'W9', 'S9', 'W10', 'S10',
                        'W11', 'S11', 'W12', 'S12', 'W13', 'S13', 'W14']
以下操作无效:
df = pd.read_csv(filename,
                 names=['YR', 'MO', 'DAY', 'HR', 'MIN', 'SEC', 'HUND',
                        'ERROR', 'RECTYPE', 'LANE', 'SPEED', 'CLASS',
                        'LENGTH', 'GVW', 'ESAL', 'W1', 'S1', 'W2', 'S2',
                        'W3', 'S3', 'W4', 'S4', 'W5', 'S5', 'W6', 'S6',
                        'W7', 'S7', 'W8', 'S8', 'W9', 'S9', 'W10', 'S10',
                        'W11', 'S11', 'W12', 'S12', 'W13', 'S13', 'W14'],
                 usecols=range(0, 42))
CParserError:标记数据时出错。C错误:在1605634行中应有53个字段,看到54个以下内容无效:
df = pd.read_csv(filename,
                 header=None)
CParserError:标记数据时出错。C错误:在1605634行中预期有53个字段,看到了54
因此,在您的问题中,您必须通过 usecols=range(0, 2)
               
              
pandas.to_csv(),则可能是因为列名中有一个'\ r',在这种情况下,to_csv()实际上会将随后的列名写入数据帧的第一列,从而导致前X行中的列数之差。这种差异是导致C错误的原因之一。