擅长:python、mysql、java
<p>我在一个数据框(<code>df</code>)中遇到了这个问题,这个数据框是从一个包含多个内部标题行的Excel工作表中创建的。</p>
<p>从<code>df</code>中清除内部头行后,列的值为“非空对象”类型(<code>DataFrame.info()</code>)。</p>
<p>此代码一次性将多个列的所有数值转换为int64和float64:</p>
<pre><code>for i in range(0, len(df.columns)):
df.iloc[:,i] = pd.to_numeric(df.iloc[:,i], errors='ignore')
# errors='ignore' lets strings remain as 'non-null objects'
</code></pre>