Schneller Stringvergleich in R

8

Ich versuche, ein Wort in einem großen Datensatz abzugleichen. Ich frage mich, ob es eine Möglichkeit gibt, die langsamste Operation in meinem Workflow zu beschleunigen.

Was ich zu tun beabsichtige ist, die Orte der Übereinstimmungen zwischen einem Wörterverzeichnis und einer Liste von Wortvektoren zu finden.

%Vor%

Der schnellste Weg, den ich bisher gefunden habe, ist, dies zu tun:

%Vor%

Meine gewünschte Ausgabe ist:

%Vor%

was ich später verwenden kann, um die durchschnittliche Punktzahl pro Wortlistenzelle zu erhalten, indem ich

tue %Vor%

Gibt es einen schnelleren Weg, den String-Matching zu machen, als was ich in der Funktion mache:

%Vor%

Ich habe den dplyr-Weg ausprobiert, denke, dass es schneller sein könnte, benutze zuerst "filter", um eine Teilmenge des "dic" zu erhalten und "colMeans" darauf anzuwenden, aber es scheint doppelt so langsam zu sein.

>

Außerdem ist das Ausführen meiner Übereinstimmungsfunktion in einer Schleife genauso langsam wie die Verwendung von "lapply".

Vermisse ich etwas? Gibt es einen Weg, der schneller ist als beides?

    
alexvicegrab 06.05.2015, 01:04
quelle

1 Antwort

9

Hier ist eine Option:

%Vor%     
Josh O'Brien 06.05.2015, 01:47
quelle

Tags und Links