zeichen Wie füge ich einen String in jedes Element eines Vektor von Strings ein, indem Sie in R anwenden?




url title tag (2)

Ich habe einen Vektor von Zeichenketten.

d <- c("Mon","Tues","Wednes","Thurs","Fri","Satur","Sun")

Für die ich den String "day" auf ähnliche Weise wie jedes Element des Vektors einfügen möchte.

week <- apply(d, "day", paste, sep='')

Keine Notwendigkeit für apply() , verwenden Sie einfach paste() :

R> d <- c("Mon","Tues","Wednes","Thurs","Fri","Satur","Sun")
R> week <- paste(d, "day", sep="")
R> week
[1] "Monday"    "Tuesday"   "Wednesday" "Thursday"  
[4] "Friday"    "Saturday"  "Sunday"   
R> 

Andere haben bereits darauf hingewiesen, dass, da paste vektorisiert wird, in diesem Fall keine Anwendung erforderlich ist.

Um Ihre Frage zu beantworten, gilt jedoch: apply wird für ein Array oder einen data.frame verwendet. Wenn Sie eine Funktion über eine Liste (oder einen Vektor) lapply sapply verwenden Sie lapply oder sapply (eine Variante von lapply , die die Ergebnisse vereinfacht ):

sapply(d, paste, "day", sep="")
        Mon        Tues      Wednes       Thurs         Fri       Satur 
   "Monday"   "Tuesday" "Wednesday"  "Thursday"    "Friday"  "Saturday" 
        Sun 
   "Sunday" 




apply