ich bin sicher, dass es eine elegante und schnelle Art und Weise ist eine Datenrahmensäule neben der Verwendung einen der() Anweisung in einer for-Schleife zu füllen ...schnellster Weg zu implementieren, welche
colors = (
"#D53E4F" "#FC8D59" "#FEE08B"
"#FFFFBF" "#E6F598" "#99D594" "#3288BD"
)
n = 6277
wxData = data.frame(
x = numeric(n - 1),
y = numeric(n - 1),
z = numeric(n - 1),
c = character(n - 1),
stringsAsFactors = FALSE
)
for (j in 1 : n-1) {
wxData$x[j] = xCoord[[1]][j] #"data.frame"
wxData$y[j] = yCoord[[1]][j] #"data.frame"
wxData$z[j] = dbz[[1]][j] #"data.frame"
colorIndx = which(wxData$z[j] == colorRanges)
wxData$c[j] = colors[colorIndx]
}
Entschuldigt, wenn es Ich wurde schon mal gefragt, aber ich habe nachgesehen.
Könnten Sie Beschreiben Sie in Worten, was Ihr Code macht? Es ist eine viel elegantere und schnellere Art der Kommunikation als unkommentierter Code ... Und vielleicht geben Sie Definitionen für die Objekte, die Sie nicht definieren, 'xCoord',' yCoord', 'dbz',' colorRanges'? – Gregor
Ich bin auch verwirrt darüber, warum Sie 'n = 6277' setzen, aber dann immer nur 'n - 1' zu verwenden scheinen ... warum nicht 'n = 6276'? Ich denke jedoch, die Antwort auf Ihre Frage ist "Übereinstimmung". – Gregor
'für (j in 1: n-1)' tut 'für (j in (1: n) - 1)', nicht 'für (j in 1: (n-1))'. Ist das deine Absicht? – nrussell