無法在渲染 reactable 時對資料框的列中的變數進行排序
P粉005105443
2023-08-14 14:23:14
<p>我在我的資料中有一列變數的順序不正確,我需要改變它們的順序以正確地視覺化渲染。 </p>
<p>我提供了一個可重現的範例,以便更容易理解:</p>
<pre class="brush:php;toolbar:false;">library(reactable)
library(dplyr)
species <- c("setosa", "versicolor")
df <- iris %>%
filter(Species %in% species)
numbers <- c( 100, 300,400, 50)
type <- rep(numbers, times=25)
df1 <- df %>% mutate(type = type)
df2 <- df1 %>%
mutate(species_type= case_when(Species == "setosa" ~ paste0(Species,": ", type),
Species == "versicolor" ~ paste0(type,": ", Species),
TRUE ~ Species ))
columns <- list(colDef(minWidth = 140), colDef(align = "center"))
columns <- setNames(columns, names(df2)[2:3])
reactable(df2, columns = columns)</pre>
<p>我需要在渲染的表格中對species_type進行排序,使得帶有50的species_type首先出現,我有一個預先計算好的資料框,其順序與上面的範例相似。然而,我嘗試在渲染之前進行排序,但是在表格中仍然無法獲得正確的順序。
我該如何做?我嘗試了排序,非常感謝! </p>
一種選擇是在將資料傳遞給
reactable
之前,根據type
重新排列(不確定為什麼這對您不起作用)。注意:我透過只保留
iris
中的Species
列和每個Species
四行來簡化了範例資料。第二個選擇是使用
defaultSorted
參數按type
排序: