使用DT包中的R,我想突出顯示每行最大/最小值爲的數字數據幀。R包DT - 如何突出每行的最大數量
假設我們建立分割與5簇,然後我們想描述這些集羣具有描述性的變量:
library(DT)
library(tidyverse)
iris[1:6, 1:4] %>% t()
1 2 3 4 5 6
Sepal.Length 5.1 4.9 4.7 4.6 5.0 5.4
Sepal.Width 3.5 3.0 3.2 3.1 3.6 3.9
Petal.Length 1.4 1.4 1.3 1.5 1.4 1.7
Petal.Width 0.2 0.2 0.2 0.2 0.2 0.4
我們希望其可視化集羣具有最高Sepal.Length,其中一個具有最高Sepal.Width等。解決方案將以每行的最大顏色顯示。
如果我使用DT包的formatStyle()函數,我可以列(最大亮點,色值,根據特定的時間間隔,...)這樣做,但我不能這樣做每行。即使我使用參數目標=「行」,整個行將被着色,不僅最大或細胞,我想。
df %>% datatable() %>%
formatStyle('1', background = styleEqual(max(df[,1]), 'green'))
另一種方法是翻譯行,我datataframe列,但我更喜歡的,而不是一個有5行50列有來有50行5列的數據幀,很長的名字。
預先感謝您的幫助和建議。
有趣,我從未想到只有通過選擇行和多列的dplyr – Stedy
謝謝@NicE,這真的很有幫助! 我對JS()部分(是javascript代碼?)評論,如果我還想強調的第二最高值(除最大),我想我可以像'VAR row_max2 =數學補充一下。 ....'。 也許有一種fonction,像'Math.sort.apply(數學,num_data)[2]' – demarsylvain
我編輯,如果你沒有太多的行和列,您可以排序'num_data'和使用任何值在if/else中爲javascript中的單元格着色。 – NicE