我应该如何将装满小数的数据帧转换为浮点数?

时间:2018-03-01 16:01:48

标签: python pandas dataframe

我现在面临的主要问题是DataFrame.quantile() doesn't work with Decimals

我可以使用df.convert_objects(convert_numeric=True)将我的Dataframe转换为浮点数,但这会生成弃用警告,建议的替换infer_objects()不起作用。

作为替代方案,我可以在输入数据上使用Dataframe.round,而不是将它们转换为Decimals。我认为这对于直接比较应该是安全的(我在列上索引以相互减去两个数据帧,例如df1.set_index('Time') - df2.set_index('Time'))但我无法确定。

3 个答案:

答案 0 :(得分:4)

您可以将pd.to_numeric应用于整个数据框:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="wrap">
    <div id="left"><div class="lef">

<li class="requirement" id="requirement_1">
     <h3 class="lew clickableH3"><a href="#">SPR</a></h3>
 <span class="fr drag lewy" style="display:none;">1 kontakt</span>
</li>

</div></div>
    <div id="right"><div class="praf">

<li class="requirement" id="requirement_2">
     <h3 class="praw clickableH3"><a href="#">SPR 2</a></h3>
 <span class="fr drag prawy" style="display:none;">2 kontakt</span>

</li>

</div></div>
</div>

答案 1 :(得分:0)

尝试这样做:

df.column_name = df.column_name.astype(float)

有关参考,请参阅this

答案 2 :(得分:0)

或试试这个:

for c in df:
    df[c] = pd.to_numeric(df[c])