überlappen Sie den Vektor, verwenden Sie Werte als Namen der Ausgabeliste [duplizieren]

8

Ich frage mich, was der beste Weg ist, die Familienfamilie lapply family (oder plyr) zu verwenden, um einen Vektor zu nehmen, eine Funktion auf die Elemente anzuwenden und eine Liste zurück zu geben, deren Namen mit den Werten übereinstimmen erster Argumentvektor. Also zum Beispiel wenn ich das tue:

%Vor%

Ich würde gerne zurückkehren, anstatt [[1]], [[2]], [[3]] als den Namen (oder eher einfach Index) der Liste, die Buchstaben "a", " b "und" c "als Namen der Ausgabeliste.

Ich weiß von hier aus, dass ich das tun kann ( Wie erstelle ich eine Liste mit Namen, aber keine Einträge in R / Splus? ), um die Liste vorher mit den richtigen Namen zu erstellen, aber ich frage mich, ob ich das ohne Vorerstellung tun kann die Liste mit den richtigen Namen.

Danke, Matt

    
mpettis 17.09.2013, 15:19
quelle

1 Antwort

12

sapply hat ein Argument USE.NAMES , das das macht, was Sie wollen:

%Vor%

Wie Josh O'Brien in den Kommentaren feststellt - und wie Sie herausgefunden haben - verhindert simplify=FALSE , dass die Ausgabe auf eine einfachere Datenstruktur reduziert wird, sodass die Ergebnisse konsistent mit denen von% bleiben. co_de% (nun, neben den Namen natürlich).

    
Peyton 17.09.2013, 15:22
quelle

Tags und Links