【发布时间】:2016-08-06 11:54:26
【问题描述】:
我正在尝试用用户将上传的文件的列中的唯一值填充 selectInput 的下拉菜单。但问题是我想以某种非字母顺序显示选择,所以我不能只使用
updateSelectInput(....., choices = sort(unique(dataframe$column)))
四个可能的选项是:经济、高级经济、商务和头等舱。只要它们出现在数据框中,我就想按这样的顺序显示它们。
提前感谢您的帮助!
【问题讨论】:
-
不确定,但你可以试试
factor(c("economy", "premium economy", "business", "first"), levels = c("economy", "premium economy", "business", "first")) -
感谢您的回复。我试过
choices = factor(unique(dataframe$Column), levels = c("Economy", "Premium economy", "Business", "First"), ordered = TRUE,但是在下拉菜单中,它只显示列中存在的级别的索引。 -
在
data.frame$Column上设置因子级别,然后在下拉列表中使用choices = as.character(dataframe$Column) -
@Symbolix 嗨。感谢您的回答。我尝试了您的方法并创建了一个名为
cabin的因子,具有四个级别。但是我仍然按照它们在数据集中出现的顺序得到它们,并且我还得到了不存在的级别的 NA。我通过使用choices = levels(factor(cabin))而不是as.character解决了这个问题。但无论如何,感谢您提供有关使用因子的提示。不知道为什么我没有早点想到。 -
很高兴我能帮上忙。如果您已经回答了自己的问题,则应将其添加为答案,然后接受/勾选您的答案(在 2 天限制之后),以便其他人知道它已解决。