Ich habe meine CSV-Datei in R als Datenrahmen importiert und ich habe meine Spalte von Interesse (AtollInservice$Antenna
) als Faktor zugeordnet.Teilen von Zeichenfolgen in einem Datenrahmen in R
Die ursprüngliche CSV-Datei hat folgendes Format in meiner Kolumne von Interesse:
COM_CVV65BSX-M\COM_CVV65BSX-M_2100_T02
Wie Sie werden feststellen, es gibt einen einzigen „\“ in meiner ursprünglichen Datei noch auf read.csv importieren und mit dem Kopf() Funktion R scheint solche die Backslash dupliziert zu haben, wie unten:
> head(AtollInService$ANTENNA)
[1] COM_CVV65BSX-M\\COM_CVV65BSX-M_2100_T02
COM_CVV65BSX-M\\COM_CVV65BSX-M_2100_T02
COM_CVV65BSX-M\\COM_CVV65BSX-M_2100_T02
[4] COM_CVV65BSX-M\\COM_CVV65BSX-M_2100_T02
COM_CVV65BSX-M\\COM_CVV65BSX-M_2100_T02
COM_CVV65BSX-M\\COM_CVV65BSX-M_2100_T02
Es gibt Überschneidungen zu Beginn der Zeichenfolge in der Datei und ich wünsche, dass alles über die \ behalten oder \, so dass COM die Hersteller, CVV65BSX-M ist Modell, 2100 ist das Band und T02 ist die Neigung.
Ich habe versucht, Hadley Wickhams Colsplit-Funktion innerhalb einer Transformationsfunktion zu integrieren, aber ich wurde für zusätzliche Informationen aufgefordert, die ich nicht knacken konnte.
Wenn jemand einen Vorschlag hat, wie ich diese bestimmte Spalte in meinem ursprünglichen Datenrahmen aufteilen könnte, würde ich mich freuen, von Ihnen zu hören. Beigefügt ist eine Verknüpfung zu einer Stichprobe der Daten, die ich verwende und teilen möchte, insbesondere die Spalte "P" ist von Interesse.
Dies ist der Datenrahmen ich jetzt arbeite:
AtollInService <- with(Atoll, Atoll[!grepl("[_()]", NOMINAL_ID) & grepl("InService", MILESTONE) & grepl("^[A-Z][A-Z][0-9]{4}$", NOMINAL_ID) & !grepl("[L18]+[L08]", THREE_G_CELL_ID), ])
Könnte ich einen String Split-Funktion unmittelbar nach dem Ende eckigen Klammer übernehmen und die Endhalterung geschlossen?
Sie haben keine doppelten Schrägstriche \ in Ihren importierten Daten. R gibt einen einzelnen Schrägstrich als \\ aus, da ein Schrägstrich für Sonderzeichen wie einen Zeilenumbruch '\ n' oder einen Tab' \ t' verwendet werden kann – thelatemail