2017-11-13 1 views
1

Ich bin mir sicher, dass diese Frage gestellt wurde, aber ich konnte keine direkte Antwort finden. Das sollte so einfach sein, aber ich bemühe mich, eine Antwort zu finden. Grundsätzlich habe ich ein df, das 10 Spalten/Vektoren hat. Es gibt einen Vektor, den ich unterteilen möchte und dann um eins reduzieren. Unten ist mein Code. Ich bin sicher, es würde funktionieren, aber ich denke, dass es einen einfacheren Weg geben muss. Vielen Dank im Voraus für Ihre Hilfe.Fragen, die eins von einem Vektor subtrahieren R

diffuse_objects <- c("Diffuse Nebula", "Elliptical Galaxy", "Spiral Galaxy",  "Galaxy", "Planetary Nebula", 
       "Nebula", "Cluster Nebulosity") 



#subset diffuse Ojbects 
newdf2 <- newdf[newdf$Type == diffuse_objects,] 
#Change from character to Numeric 
newdf2$Magnitude <- as.numeric(newdf2$Magnitude) 
#Subtract -1 
newdf3 <- newdf2[, "Magnitude"] - 1 
newdf4 <-cbind(newdf3, newdf2) 
+1

'==' sollte in% sein '%'. –

Antwort

1
diffuse_objects <- c("Diffuse Nebula", "Elliptical Galaxy", "Spiral Galaxy",  "Galaxy", "Planetary Nebula", 
       "Nebula", "Cluster Nebulosity") 



#subset diffuse Ojbects 
newdf2 <-filter(newdf,Type %in% diffuse_objects) 
#Change from character to Numeric 
newdf2$Magnitude <- as.numeric(newdf2$Magnitude)-1 
+0

Würdest du mir eine Möglichkeit zeigen, mit sapply die diffuse_ojbects vom ursprünglichen df zu subtrahieren? Sparen Sie mir Zeit zu versuchen, es zurück zu binden. Auch sauberer. – astronomerforfun

Verwandte Themen