擅长:python、mysql、java
<p>在add new row filled by floats中,所有列都更改为<code>float</code>s</p>
<p>可能的解决方案是<a href="http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.round.html" rel="nofollow noreferrer">^{<cd2>}</a>并转换所有列:</p>
<pre><code>df = df.round().astype(int)
</code></pre>
<p>或添加新的<code>Series</code>转换为<code>integer</code>:</p>
<pre><code>df = df.append(df.mean().rename('Avg').round().astype(int))
print (df)
Daily Total actor1 actor2
actor
2019-01-01 25 10 15
2019-01-02 30 15 15
Avg 28 12 15
</code></pre>
<p>如果要仅转换行值由整数填充的列:</p>
<pre><code>d = dict.fromkeys(df.columns[df.loc['Avg'] == df.loc['Avg'].astype(int)], 'int')
df = df.astype(d)
print (df)
Daily Total actor1 actor2
actor
2019-01-01 25.0 10.0 15
2019-01-02 30.0 15.0 15
Avg 27.5 12.5 15
</code></pre>