Birkaç matris oluşturmak ve işlev aracılığıyla elde edilen değerleri otomatik olarak belirli satırlara atamak istiyorum.Matris adı bir karakter dizesi olduğunda matrisin satırına değerler nasıl atanır
EXAMPLE1<-matrix(ncol=4, nrow=16)
EXAMPLE2<-matrix(ncol=4, nrow=16)
EXAMPLE3<-matrix(ncol=4, nrow=16)
EXAMPLE4<-matrix(ncol=4, nrow=16)
for(i in 1:16){
for(j in 1:4){
paste0("EXAMPLE",j, "[",i,",","]")<- c(1:4)
}
}
ve
for(i in 1:16){
for(j in 1:4){
get(paste0("EXAMPLE",j)[i,]<- c(1:4)
}
}
ama
"atama hedef dışı dil nesnesine genişler" döndürülür: Ben şimdiye kadar denedim ne örnek vereyim. Bu nedenle, bu hata döndürmüyor, ancak değerler matris içine yazılmadı. Bu hata döndürmüyor. İlk matrisler deboş
[,1] [,2] [,3] [,4]
[1,] NA NA NA NA
[2,] NA NA NA NA
[3,] NA NA NA NA
[4,] NA NA NA NA
ve bir ilmek yapıldıktan sonra, (i = 1) 1 satır doldurulur (ve sonra ikinci için tüm Örnek matrisleri expext - yani, ikinci sıra dolu döngü bittiğinde, sayılarla dolu ÖRNEK matris olurdu.).
[,1] [,2] [,3] [,4]
[1,] 1 2 3 4
[2,] NA NA NA NA
[3,] NA NA NA NA
[4,] NA NA NA NA
nokta i macun işlevi tarafından matris adı geçmesi nedeniyle, matris satırda değer atamak değil nasıl olsa olduğunu. Adını karakter dizesi olarak koymak istersek, matriste belirli bir satıra değer atamak nasıl? Herhangi bir yardım harika olurdu. Teşekkürler
... Baskı ... Çok net olmadığım için üzgünüm. Bahsettiğim gibi, matris satırına bir fonksiyonun (matrisimle aynı sayıda sütun içerdiği) sonucunu yazmak istiyorum. Her sıra farklı gözlemlere uygulanan işlevden kaynaklanır. Birden fazla işlevi aynı değişkene uygulamak istiyorum, böylece farklı fonksiyonların sonuçları için (sütun numaralarına göre farklı olan ve farklı isimlere sahip olan) birkaç matrisim var. Numaralandırdığım ve adlandırılan matrisler, sonuçları takip etmenin ve sonra bunları karşılaştırmanın en kolay yoludur. Yukarıda matris dizisine bir değer veremediğim için bir problem örneği verdim, çünkü matrisin adını string olarak verdim (ve bunu yapıyorum çünkü aksi takdirde yapılması gereken çok sayıda numara olacaktı). j ı matrislerin adları oluşturmak için döngü ve paste0("EXAMPLE", j)
neden 1-10 veya başka numaralar
sne gider ve ben için hangi gözlem belirtmek için nerede Yani genel olarak ben
EXAMPLEj[i,]<-SomeFunctionResult
yapabilmek istiyorum Kullanılacak işlevi ve sonuca hangi satırda koyacağını. Matrisler zaten oluşturuldu, ancak sonuçları matris satırına iletmenin bir yolunu bulamadım.
R (ve programlama) 'da yeniyim, bu yüzden bunu çözmek için mümkün olan en kötü yolu seçtim ve bu liste ya da diziler kullanmak çok daha kolay olacaktır. Yanıtlarınız için teşekkür ederim.
İstediğiniz sonucu verebilir misiniz? –
Sütunlarda '1,2,3,4' ile bir matris oluşturmaya çalışıyorsunuz ve tüm satırlar için tekrarlıyor musunuz? –
Ne yapmak istersin belli değil! Bir matris ile ne yapmak istediğinizi göstermeye çalışın. Sonra değişkenleri bir listeye koymak ve tek bir matris için ne yaptığınızı genellemek için 'do.call' veya' lapply' kullanmak daha iyi olur diye düşünüyorum. – agstudy