2017-11-13 6 views
1

この質問は尋ねられましたが、私は直接答えは見つけられませんでした。これは簡単なはずですが、私は答えを見つけるのに苦労しています。基本的に私は10列/ベクトルを持つdfを持っています。私がサブセットして1つ減らしたいVectorが1つあります。以下は私のコードです。私はそれが動作すると確信していますが、私は簡単な方法がなければならないと考えています。あなたの助けを前にありがとう。ベクトルから1を引いた質問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

'=='%で ''%であるべきです。 –

答えて

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

元のdfよりもdiffuse_ojbectsを差し引くためにsapplyを使用する方法を教えてください。それを縛る時間を節約してください。クリーナーも。 – astronomerforfun