2016-09-28 4 views
-1

Formattable ermöglicht eine formatierte Datenausgabe in R und Rshiny. Eine gute Erklärung ist hier: https://www.r-bloggers.com/formatting-table-output-in-r/Formatiertabelle in R mit dynamischen Spaltenüberschriften verwenden

example code

Im „Formatierer“ -Funktion über Sie, dass die Spaltenüberschriften verwiesen werden sehen können. Ich würde gerne wissen, ob dieser Code so geschrieben werden kann, dass er mit dynamischen Spaltenheadern arbeitet, die sich aufgrund einer Benutzereingabe in eine rshiny-App ändern. Ich dachte, dass es einen Weg geben könnte, die Spaltennummer anstelle des spezifischen Namens zu referenzieren, aber das ist bisher nicht gelungen. Jede Hilfe wird geschätzt.

Danke.

+0

Ich finde das Wort "dynamisch" in den meisten Fällen seiner Verwendung auf SO bedeutungslos. Veröffentlichen Sie ein Datenbeispiel (oder einen Code mit der von Ihnen angegebenen Benutzereingabe) und sagen Sie, was erwartet wird. Ich kann nicht ganz glauben, dass "Dynamik" ein eigenes Etikett hat. Und die Beschreibung auf dem Tag lässt mich denken, dass es nicht passt, da R eine interpretierte Sprache ist. Das Posten eines Bildes für Code wird auf SO streng abgelehnt. –

+0

Als vereinfachtes Beispiel von oben, sagen wir, dass dieser Code aus einer rShiny-App stammt, die einen selectInput hatte, der es dem Benutzer erlaubt, ein Datum auszuwählen und dann den Aktienkurs für dieses Datum anzuzeigen. Außerdem würde sich der Header der 3. Spalte in paste0 ändern ("Value", Eingabe $ date). Bei der Änderung der Spaltenüberschrift weiß ich nicht, wie ich auf diese Spalte in der Formatierfunktion oben verweisen soll, wenn "Value = color_tile (" white "," orange ")". Ich dachte daran, die Spalte nach Position statt nach Namen mit etwas wie "DF [3] =" zu bezeichnen, aber noch keinen Erfolg. – IPB

Antwort

2

Es scheint, dass die Funktion nach einer benannten Liste sucht, die den Namen in data.frame entspricht. Ich empfehle, dass Sie die Liste mit Ihren gewünschten Formaten erstellen und dann den Namen der Formatargumente "dynamisch" festlegen, damit sie mit dem übereinstimmen, was Sie anzeigen.

z.B .:

myFormats <- list(formatter("span")) 
names(myFormats) <- input$userEnteredChoiceHere 

formattable(DF, myFormats) 

Ohne obwohl tatsächlich reproduzierbar Code ist es hart, um Ihnen mehr als das helfen. Ein Bild von Code ist nicht einfach zu bearbeiten.

+0

Mark, das hat funktioniert. Vielen Dank – IPB

Verwandte Themen