第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

使用來自另一個(gè)數(shù)據(jù)框的值將熊貓條樣式應(yīng)用于數(shù)據(jù)框

使用來自另一個(gè)數(shù)據(jù)框的值將熊貓條樣式應(yīng)用于數(shù)據(jù)框

FFIVE 2022-12-20 12:16:28
我有 df1 和 df2。我想使用 df2 中的值在 df1 的單元格中顯示條形圖。我能夠使用下面的代碼應(yīng)用其他形式的樣式,但是對(duì)于條形圖你不能使用這種方法。def color_cells(s):    if s > 90:        return 'color:{0}; font-weight:bold'.format('green')    elif s>80:        return 'background-color: light yellow;color:{0}; font-weight:regular'.format('dark yellow')    else:        return 'color:{0}; font-weight:bold'.format('red')df1.style.apply(lambda x: df2.applymap(color_cells), axis=None)我在 df2 中獲取條形碼的代碼是df2.style.bar(color=['#d65f5f', '#5fba7d'])如何將以上代碼應(yīng)用于 df1?索引和列名相同。添加示例數(shù)據(jù)框:df1=pd.DataFrame(np.random.rand(15, 10))df2=pd.DataFrame(np.random.rand(15, 10)*100)
查看完整描述

1 回答

?
慕俠2389804

TA貢獻(xiàn)1719條經(jīng)驗(yàn) 獲得超6個(gè)贊

這是執(zhí)行此操作的代碼:


df1=pd.DataFrame(np.random.rand(15, 10))

df2=pd.DataFrame(np.random.rand(15, 10)*100)


pct = (df2 - df2.min()) / (df2.max() - df2.min() )*100


def make_bar_style(x):

    return f"background: linear-gradient(90deg,#5fba7d {x}%, transparent {x}%); width: 10em"    

pct.applymap(make_bar_style).shape


df1.style.apply(lambda x: pct.applymap(make_bar_style), axis=None)

結(jié)果是:

http://img1.sycdn.imooc.com//63a13740000102b920000927.jpg

為了證明條形尺寸由 df2 驅(qū)動(dòng)這一事實(shí),請(qǐng)考慮以下內(nèi)容:

df2 = pd.DataFrame(np.mgrid[0:15, 0:10][0])

結(jié)果是:

http://img1.sycdn.imooc.com//63a1374f0001232919910888.jpg

查看完整回答
反對(duì) 回復(fù) 2022-12-20
  • 1 回答
  • 0 關(guān)注
  • 113 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)