İlk sütunu kategorik bir tanımlayıcı olarak, ikinci sütunu bir frekans değeri olarak ve kalan sütunları ham veri sayıları olarak içeren veri çerçevem var. Tüm sütunları frekans sütunuyla çarpmak istiyorum ama ilk ikisini değil.muply_each işlevini kullanırken belirli sütunları seçerek dplyr
Tüm ham sayım sütunları Cihazı nokta, örneğin "L.abd", T.xyz vs. ardından büyük harfle başlar Örneğin
, kodu kullanırsanız:
require(dplyr)
ID <- c(1,2,3,4,5,6)
Freq <- c(0.1,0.2,0.3,0.5,0.1,0.3)
L.abc <- c(1,1,1,3,1,0)
L.ABC <- c(0,3,2,4,1,1)
T.xyz <- c(1,1,1,1,0,1)
F.ABC <- c(4,5,6,5,3,1)
df <- as.data.frame(cbind(ID, Freq, L.abc, L.ABC, T.xyz, F.ABC))
df_new <- df %>% mutate_each(funs(.*Freq), starts_with("L."))
"L." ile başlayan sütunlarla birlikte kategorik veri sütunlarını içeren yeni bir veri çerçevesi oluşturabilirim karşılık gelen frekans değeri ile çarpılmıştır.
"begin_with" komutunu büyük harfle başlayan ve tam durmaya başlayan tüm sütunları seçmek için değiştirmenin bir yolu var mı? "[A-Z]" gibi modifikasyonları kullanmaya başlama girişimlerim. başarısız oldu. Bu gibi durumlar için önceden
Sen 'maçları ("^[AZ] \\", ignore.case = FALSE) kullanmak isteyebilirsiniz' Varsayılan olarak DOĞRU ve OP, büyük harflerle yazmak istiyor. Örnekle karşılaştırın (select, iris, eşlemeler ("^ [az]. *")) 'Ve' seçin (iris, eşleşmeler ("^ [az]. *", Ignore.case = FALSE)) ' –
@docendodiscimus Thanks varsayılan durumu kontrol etmedi. – akrun