<p>正如另一个答案已经暗示的那样,您的csv格式不正确,行尾有一个<code>comma</code>。因此,这导致pandas将第一列视为索引列。在</p>
<p>要解决这个问题,可以将<code>index_col=False</code>参数传递给<a href="http://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html" rel="nofollow">^{<cd3>}</a>函数。示例-</p>
<pre><code>In [24]: s = io.StringIO("""cmte_id,cand_id,cand_nm,contbr_nm,contbr_city,contbr_st,contbr_zip,contbr_employer,contbr_occupation,contb_receipt_amt,contb_receipt_dt,receipt_desc,memo_cd,memo_text,form_tp,file_num,tran_id,election_tp
....: C00579458,"P60008059","Bush, Jeb","EASTON, AMY KELLY MRS.","KEY BISCAYNE","FL","331491716","HOMEMAKER","HOMEMAKER",2700,26-JUN-15,"","","","SA17A","1024106","SA17.114991","P2016",""")
In [25]: df = pd.read_csv(s) #Issue
In [26]: df
Out[26]:
cmte_id cand_id cand_nm contbr_nm \
C00579458 P60008059 Bush, Jeb EASTON, AMY KELLY MRS. KEY BISCAYNE
contbr_city contbr_st contbr_zip contbr_employer \
C00579458 FL 331491716 HOMEMAKER HOMEMAKER
contbr_occupation contb_receipt_amt contb_receipt_dt \
C00579458 2700 26-JUN-15 NaN
receipt_desc memo_cd memo_text form_tp file_num tran_id \
C00579458 NaN NaN SA17A 1024106 SA17.114991 P2016
election_tp
C00579458 NaN
In [29]: df = pd.read_csv(s,index_col=False) #No issue
In [30]: df
Out[30]:
cmte_id cand_id cand_nm contbr_nm contbr_city \
0 C00579458 P60008059 Bush, Jeb EASTON, AMY KELLY MRS. KEY BISCAYNE
contbr_st contbr_zip contbr_employer contbr_occupation contb_receipt_amt \
0 FL 331491716 HOMEMAKER HOMEMAKER 2700
contb_receipt_dt receipt_desc memo_cd memo_text form_tp file_num \
0 26-JUN-15 NaN NaN NaN SA17A 1024106
tran_id election_tp
0 SA17.114991 P2016
</code></pre>
<p>这在<a href="http://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html" rel="nofollow">the documentations</a>-</p>
<blockquote>
<p><code>index_col</code> : int or sequence or False, default None</p>
<p>Column to use as the row labels of the DataFrame. If a sequence is given, a MultiIndex is used. <strong>If you have a malformed file with delimiters at the end of each line, you might consider index_col=False to force pandas to <em>not</em> use the first column as the index (row names)</strong></p>
</blockquote>
<p>(重点是我的)</p>