[英]style.hide_index() adds multiple zeros after decimal
這就是我正在做的事情
df_top_50= df[['Rank', 'Player', 'Position', 'Age', 'Nationality', 'Club Left', 'Club Joined', 'Transfer Fee (EUR)']]
它回來了
Rank Player Position Age Nationality Club Left Club Joined Transfer Fee (EUR)
1 1 Antony Forward 22 Netherlands Ajax Amsterdam Manchester United 95.00
2 2 Wesley Fofana Defender 21 England Leicester City Chelsea FC 80.40
3 3 Aurélien Tchouameni Midfielder 22 Monaco AS Monaco Real Madrid 80.00
我想擺脫索引列,所以我添加style.hide_index()
:
df_top_50= df[['Rank', 'Player', 'Position', 'Age', 'Nationality', 'Club Left', 'Club Joined', 'Transfer Fee (EUR)']].style.hide_index()
我得到了我想要的,但是轉會費一欄中的值突然在小數點后加了0:
Rank Player Position Age Nationality Club Left Club Joined Transfer Fee (EUR)
1 Antony Forward 22 Netherlands Ajax Amsterdam Manchester United 95.000000
2 Wesley Fofana Defender 21 England Leicester City Chelsea FC 80.400000
3 Aurélien Tchouameni Midfielder 22 Monaco AS Monaco Real Madrid 80.000000
有什么辦法可以把它放回去,比如在第一個 dataframe 中?
如果 OP 的目標是四舍五入Transfer Fee (EUR)
列中的值,則可以使用pandas.DataFrame.round
作為
df = df.round({'Transfer Fee (EUR)': 1})
然后該列的值將是
0 95.0
1 80.4
2 80.0
或者,如果 OP 想要指定確切的小數位數,假設一個希望該數字為2
,那么可以使用pandas.DataFrame.apply
如下
df['Transfer Fee (EUR)'] = df['Transfer Fee (EUR)'].apply('{0:.2f}'.format)
然后該列的值將是
0 95.00
1 80.40
2 80.00
Since pandas.io.formats.style.Styler.hide_index
is deprecated, use pandas.io.formats.style.Styler.hide
instead.
1.4.0 版后已棄用:此方法應替換為 hide(axis="index", **kwargs)
嘗試這個:
df.style.format({'Transfer Fee (EUR)': "{:.2f}"}).hide()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.