如何根據自定義格式化邏輯格式化 DataFrame 的子集?
之前:
| 國家 | 最后的 | 以前的 | 絕對值。改變 | |
|---|---|---|---|---|
| 0 | 美國 | 8.60 | 8.30 | 0.30 |
| 1 | 日本 | 2.50 | 2.50 | 0.00 |
| 2 | 中國 | 2.00 | 2.10 | -0.10 |
| 3 | 英國 | 9.10 | 9.00 | 0.10 |
| 4 | 歐元區 | 8.10 | 7.40 | 0.70 |
之后:
| 國家 | 最后的 | 以前的 | 絕對值。改變 | |
|---|---|---|---|---|
| 0 | 美國 | 8.6 | 8.3 | 30 個基點 |
| 1 | 日本 | 2.5 | 2.5 | 0 bp |
| 2 | 中國 | 2.0 | 2.1 | -10 基點 |
| 3 | 英國 | 9.1 | 9.0 | 10個基點 |
| 4 | 歐元區 | 8.1 | 7.4 | 70 bp |
uj5u.com熱心網友回復:
原始資料:
df = pd.DataFrame({'Country': ['United States', 'Japan','China','United Kingdom','Euro Area'],
'Last': [8.60, 2.50, 2.00, 9.10, 8.10],
'Previous': [8.30, 2.50, 2.10, 9.00, 7.40],
'Abs. Change': [0.30, 0.00, -0.10, 0.10, 0.70]})
1 小數四舍五入
df[['Country', 'Last', 'Previous']] = df[['Country', 'Last', 'Previous']].round(1)
添加bp
df['Abs. Change'] = df['Abs. Change'].apply(lambda x: str(x) ' bp')
結果
print(df)
Country Last Previous Abs. Change
0 United States 8.6 8.3 0.3 bp
1 Japan 2.5 2.5 0.0 bp
2 China 2.0 2.1 -0.1 bp
3 United Kingdom 9.1 9.0 0.1 bp
4 Euro Area 8.1 7.4 0.7 bp
uj5u.com熱心網友回復:
原始資料:
df = pd.DataFrame({'Country': ['United States', 'Japan','China','United Kingdom','Euro Area'],
'Last': [8.60, 2.50, 2.00, 9.10, 8.10],
'Previous': [8.30, 2.50, 2.10, 9.00, 7.40],
'Abs. Change': [0.30, 0.00, -0.10, 0.10, 0.70]})
小數 1:
import numpy as np
df=np.round(df, decimals = 1)
添加bp:
df['quantity'] = df['quantity'].apply(lambda x: x*100)
df['Abs. Change'] = df['Abs. Change'].apply(lambda x: str(x) ' bp')
結果 結果資料框
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/496275.html
