Kurzversion:
Ich verstehe das Verhalten von as.character nicht, wenn ich versuche, eine einzelne Zeile eines Datenrahmens in einen Zeichenvektor umzuwandeln.
%Vor%Vielleicht könnte mir jemand eine Erklärung für die letzten zwei Ausgabezeilen und den richtigen Ansatz geben? Vielen Dank.
Hintergrund / Zweck:
Ich möchte lre()
verwenden, um aufeinanderfolgende Vorkommen von Werten in einer Zeile eines Datenrahmens (mit Spalten verschiedener Datentypen) zu erkennen.
Problem: lre()
benötigt einen Vektor, Vektoren benötigen einen bestimmten Datentyp (Integer, Zeichen, Faktor, ...). Meine Idee hier ist, die Datenrahmenzeile in einen Zeichenvektor zu verwandeln, um Datenverlust durch Umwandlung zu vermeiden.
Ihre Datenrahmenspalten sind keine Zeichen, sondern Faktoren.
Wenn Sie einen Datenrahmen erstellen, sind die Zeichen standardmäßig Faktoren. Sie können dies deutlich sehen, wenn Sie eine Spalte auswählen
%Vor% Um dieses Verhalten zu vermeiden, setzen Sie das stringsAsFactors
Argument auf FALSE
Sie sollten sich auch diese Frage ansehen: Wie konvertiert man eine Datenrahmenspalte in einen numerischen Typ?
Versuchen Sie Folgendes:
%Vor%Ihre Strings wurden in Faktoren umgewandelt und Ihnen wurde die Faktorstufe angezeigt.
Tags und Links string r vector type-conversion