mutasyonunu kullanarak sütun eklenir. Veri sütununa (dat
) sahip bir sütun (Seq
) (karakter sınıfı) içeren bir sütunum var. Her satırdaki diziyi bölmeye çalışıyorum ve 'A'
, 'C'
, 'G'
, 'T'
numaralarını sayıyorum ve her sütunu mutasyon kullanarak ekleyin (dplyr
). Aşağıda örnek veri çerçevem ve denediğim kod var. Ben yürütmeye çalışıyorumVeri çerçevesindeki toplam karakter oluşumu nasıl sayılır ve R
Seq
CAGGACATAA
TGTCCACTGC
Kodu:
count_bases <- function (x){
for(i in 1:length(x)){
tab[i] <- table(strsplit((x)[i],""))
}
return(tab)
}
count_bases(dat$Seq)
Sadece ilk satır için komutu kullanırsanız: gayet iyi çalışıyor ve bana sonuç verir table(strsplit(dat$Seq[1],""))
. Elde çalışıyorum İstenen çıkış yukarıdaki fonksiyon tarafından ve aşağıda gösterilen bir veri çerçevesi oluşturmak için mutasyona:
Seq A C G T
CAGGACATAA 5 2 2 1
TGTCCACTGC 1 4 2 3
'do.call gibi bir şey ((x) rbind, lapply (dat $ Seq, fonksiyon {tablo (strsplit (as.character (x), ""))}))'? – alistaire
ne hakkında cbind (dat, t (apply (dat, 1, function (x) tablosu (strsplit (x, ""))))) '? –
Cevabınız için teşekkür ederiz. Yukarıdaki kodu "do.call" ile denedim ve şu uyarıyı aldım "Uyarı iletisi: In (işlev (..., deparse.level = 1): sonuç sütun sayısı, vektör uzunluğunun() bir katı değil 54) "Doğru bir şey yapıyorum mu? Bu işlev, varolan veri çerçevesine (dat) bu sütunları eklemek için çağrılabilir. Teşekkürler – rkg