Tidak dapat mengisih pembolehubah dalam lajur bingkai data apabila memaparkan boleh bertindak balas
P粉005105443
P粉005105443 2023-08-14 14:23:14
0
1
484
<p>Saya mempunyai lajur pembolehubah dalam data saya yang tidak berada dalam susunan yang betul dan saya perlu menukar susunannya untuk memaparkan visualisasi dengan betul. </p> <p>Saya telah menyediakan contoh yang boleh dibuat semula untuk memudahkan pemahaman: </p> <pre class="brush:php;toolbar:false;">library(reactable) perpustakaan(dplyr) spesies <- c("setosa", "versicolor") df <- iris %>% penapis(Spesies %dalam% spesies) nombor <- c( 100, 300,400, 50) taip <- rep(nombor, kali=25) df1 <- df %>% mutasi(jenis = jenis) df2 <- df1 %>% mutate(species_type= case_when(Spesies == "setosa" ~ paste0(Spesies,": ", type), Spesies == "versicolor" ~ paste0(type,": ", Species), BENAR ~ Spesies )) lajur <- senarai(colDef(minWidth = 140), colDef(align = "tengah")) lajur <- setNames(lajur, nama(df2)[2:3]) boleh bertindak balas(df2, lajur = lajur)</pra> <p>Saya perlu mengisih spesies_jenis dalam jadual yang diberikan supaya spesies_jenis dengan 50 muncul dahulu, saya mempunyai rangka data prakiraan dalam susunan yang serupa dengan contoh di atas. Walau bagaimanapun, saya cuba mengisih sebelum memberikan tetapi masih tidak mendapat susunan yang betul dalam jadual. Apa patut saya buat? Saya cuba menyusun, terima kasih banyak! </p>
P粉005105443
P粉005105443

membalas semua(1)
P粉665427988

Satu pilihan ialah menyusun semula data selepas menghantarnya reactable之前,根据type(tidak pasti mengapa ini tidak berfungsi untuk anda).

Nota: Saya memudahkan data contoh dengan menyimpan hanya iris中的Species列和每个Speciesempat baris.

library(reactable)
library(dplyr)

species <- c("setosa", "versicolor")
df <- iris[c(1:4, 51:54), ] %>
  select(Species) %>
  filter(Species %in% species)
numbers <- c(100, 300, 400, 50)
type <- rep(numbers, times = 2)
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])

df2 %>
  arrange(type) %>
  reactable(, columns = columns)

Pilihan kedua ialah menggunakan defaultSorted参数按typeIsih:

reactable(df2, columns = columns, defaultSorted = "type")
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan