我正在處理輸出到 html 檔案的資料框。我想為某些字串添加顏色:
df1 = df1[(
df1['Visitor'].str.contains('^TOR|^MTL|^CGY|^WPG|^VAN|^EDM|^OTT', na=False)
) | (df1['Home'].str.contains('^TOR|^MTL|^CGY|^WPG|^VAN|^EDM|^OTT', na=False))]
df1.fillna('', inplace=True)
df1.to_html('schedule.html', index=False)
上面的代碼洗掉了不包含任何列出的團隊的所有行。我想為字串留下的行添加顏色。例如'TOR'將是藍色的。
正如在另一個執行緒中看到的,這是我嘗試過的,但沒有任何改變:
def styler(col):
if col.name != 'Visitor vs Home':
return [''] * len(col)
bg_color = col.map({
'TOR': 'blue',
'MTL': 'red',
'VAN': 'green',
}).fillna('')
return 'background-color:' bg_color
df1.style.apply(styler)
非常歡迎任何提示或建議。
謝謝!
uj5u.com熱心網友回復:

示例資料和匯入:
import numpy as np
import pandas as pd
df = pd.DataFrame({
'Visitor': ['TOR', 'MTL', 'VAN', 'WPG', 'EDM'],
'Home': ['CGY', 'WPG', 'OTT', 'TOR', 'MTL'],
'Visitor vs Home': ['String with TOR',
'String with MTL',
'String with VAN',
'String with no match',
np.NaN]
})
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/331165.html
下一篇:mapply輸出一列而不是串列
