aşağıdaki biçimde, dizgi bir vektör vardır:Bir veri çerçevesindeki konuma göre sayı dizesi nasıl değiştirilir?
strings <- c("UUDBK", "KUVEB", "YVCYE")
Ayrıca böyle bir veri çerçevesi vardır:
replacewith <- c(8, 4, 2)
searchhere <- c("UUDBK, YVCYE, KUYVE, IHVYV, IYVEK", "KUVEB, UGEVB", "KUEBN, IHBEJ, KHUDN")
dataframe <- data.frame(replacewith, searchhere)
I şeritler vektör değeri ile değiştirilmesi ettirmesi, Bu veri çerçevesindeki karşılık gelen "replacewith" sütunu. Şu anda bunu yapıyorum yoludur:
final <- sapply(as.character(strings), function(x)
as.numeric(dataframe[grep(x, dataframe$searchhere), 1]))
Ancak bu çok hesaplama ağır uzunluğu 10^9 ile karakter vektör ile bunu edilecektir.
Bunu yapmanın daha iyi bir yolu nedir?
Teşekkürler!
'final' şey eksik sadece UUDBK KUVEB YVCYE 8 4 8. Am gösterir? – AntoniosK
@AntoniosK Orijinal sorudaki değişken finalimden mi bahsediyorsunuz? Bu istenen çıktı, şimdi içinde değiştirilen değerlere sahip olan bir vektör. –
Bu, @RichScriven'e bir cevaptı, çünkü daha önce bir şeyden bahsetti. Kodum sizin için çalışıyor mu? – AntoniosK