Python如何轉換百分數字符串爲浮點數

本文轉自http://www.datastudy.cc/article/5d8624e4a1d0d91fbc59fc3f9ad8704d?from=zhihu

很多時候,我們拿到的報表數據,裏面的小數都是帶百分號的字符串,不能進行直接的計算,需要對其進行轉換,然後再輸出。

解決方法:

from pandas import DataFrame;

df = DataFrame({
'p_str': ['10.33%','23.22%','56%','35.786%','99.0009%']
});

p_float = df['p_str'].str.strip("%").astype(float)/100;

#保留小數點後面2位
p_float_2 = p_float.round(decimals=2)

#如果想將小數轉成百分號字符串,可以這樣子幹
#再轉換成百分號並且保留2位數(精度可以調整)
p_str_2 = p_float.apply(lambda x: format(x, '.2%')); 

#重新賦值
df['p_str_2']=p_str_2;
df['p_float']=p_float;
df['p_float_2']=p_float_2;

df
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章