multi-dimensionale Liste? Liste der Listen? array von Listen?
(Ich bin definitiv mit falschen Terminologie in dieser Frage, tut mir Leid - ich weiß nur nicht die richtige Art und Weise zu beschreiben, in R Bedingungen...)
Will ich schaffen, eine Struktur heterogener Objekte. Die Dimensionen sind nicht erforderlich, rechteckig. Was ich brauche wäre wohl auch nur "array von Objekten" in anderen Sprachen wie C. mit "Objekt" meine ich eine Struktur, bestehend aus verschiedenen Mitgliedern, also einfach nur eine Liste im R - Beispiel:
myObject <- list(title="Uninitialized title", xValues=rep(NA,50), yValues=rep(NA,50))
und jetzt möchte ich, um 100 solcher Objekte, und in der Lage sein, um Ihre Mitglieder, indem Sie so etwas wie
for (i in 1:100) {myObject[i]["xValues"]<-rnorm(50)}
oder
for (i in 1:100) {myObject[i]$xValues<-rnorm(50)}
Wäre ich dankbar für jeden Hinweis darüber, wo das Ding beschrieben wird.
Vielen Dank im Voraus!
matrix
. Sie kann viele verschiedene Matrizen in einem einzigen list
. ie, haben Sie eine list of matrices
. Wenn die Objekte von unterschiedlichem Typ sind, können Sie speichern Sie Sie in einem data.frame
oder eine list
, in dem Fall hätte man ein list of data.frames
oder eine list of lists
.Wenn die Maße sind immer rechteckig sein (in Ihrem Fall, 100x50), und die Inhalte sind immer homogen sein (in Ihrem Fall, numerisch), dann erstellen Sie ein - array/matrix. Wenn Sie möchten, die Fähigkeit zum hinzufügen/löschen/einfügen auf die einzelnen Listen (oder ändern Sie den Datentyp), dann verwenden Sie eine Liste-von-Listen.
InformationsquelleAutor Vasily A | 2013-02-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mir war nicht bewusst, dass Sie waren auf der Suche für Sie erstellen andere Objekte der gleichen Struktur. Sie sind auf der Suche für
replicate
.Yep,
replicate
ist nur ein wrapper umsapply
, der ein cousin vonlapply
. Je mehr Sie wissen 😉InformationsquelleAutor Arun
sind Sie auf der Suche nach dem Namen dieses mythisches Ungeheuer oder einfach nur, wie es zu tun? 🙂 ich könnte falsch sein, aber ich denke Sie würden nur nennen es eine Liste von Listen.. zum Beispiel:
in Ihrem Beispiel, machen Sie ein Objekt mit 2 anderen Objekten unterschiedlicher Typen. Was ich brauche, ist zu 100 Objekte der gleichen composite-Struktur (ich weiß nicht, ob es klingt mehr klar...).
Ich glaube, Sie haben 100-Listen (
A1, A2, ..., A100
). Nun, machen Sie eine weitere Liste von zu tunB <- list(A1, A2... A100
) (ja, Sie haben, geben Sie Sie auf). Dann können Sie den ZugriffB[[1]][[2]]
für 2. element der ersten Liste als Anthony gezeigt hat. Wenn dies ist nicht, was Sie suchen, dann müssen Sie zum Bearbeiten Ihrer post um besser zu erklären. Weil das ist, was es scheint, Sie sind für Fragen.ja, in meinem Fall kann beschrieben werden als 100-Listen - aber natürlich, indem Sie nicht eine Lösung für mich (ich habe 100 als ein Beispiel, es könnten 1000) :[ Nach der Lektüre ähnliche Fragen, es scheint für mich, dass R nicht implementieren kann, so etwas, was ein wenig schade... Danke für deine Hilfe aber.
R sicher implementieren können, ist so eine Sache - siehe meinen obigen Kommentar.
InformationsquelleAutor Anthony Damico
hier ist das Beispiel der Lösung, die ich für den moment, vielleicht wird es hilfreich sein für jemanden:
lapply(1:10,function(y) list(title=paste("the title #",y,sep=""),x=rnorm(50),y=rnorm(50)) )
wo1:10
ist die1:n
Anzahl der Listen, die Sie erstellt werden soll.ich danke Ihnen sehr! Dies ist in der Tat besser!
InformationsquelleAutor Vasily A
Wenn die Maße sind immer rechteckig sein (in Ihrem Fall, 100x50), und die Inhalte sind immer homogen sein (in Ihrem Fall, numerisch), dann erstellen Sie ein 2D - array/matrix.
Wenn Sie möchten, die Fähigkeit zum hinzufügen/löschen/einfügen auf die einzelnen Listen (oder ändern Sie den Datentyp), dann mit einem Liste-von-Listen.
ok, so klicken Sie auf den button 'Bearbeiten' auf Ihre Frage, so zu sagen. Nicht begraben, hier unten in den Kommentaren, die kaum jemand liest.
InformationsquelleAutor smci