Come posso dividere in modo efficiente la seguente stringa sulla prima virgola utilizzando la base?Dividi sulla prima virgola nella stringa
x <- "I want to split here, though I don't want to split elsewhere, even here."
strsplit(x, ???)
Risultato desiderato (2 stringhe):
[[1]]
[1] "I want to split here" "though I don't want to split elsewhere, even here."
Grazie in anticipo.
EDIT: Non ho pensato di dirlo. Questo deve essere in grado di generalizzare ad una colonna, vettore di stringhe come questo, come in:
y <- c("Here's comma 1, and 2, see?", "Here's 2nd sting, like it, not a lot.")
Il risultato può essere due colonne o una lunga vettore (che posso prendere ogni altro elemento) o un elenco di punture con ciascun indice ([[n]]) con due stringhe.
Ci scusiamo per la mancanza di chiarezza.
estremamente hacky, ma per quanto riguarda qualcosa come 'lista (testa (y [[1]], 1), pasta (coda (y [[1]], - 1), collasso = "")) dove 'y' è l'output di' strsplit (x, ...) '? – Chase
Chase l'ho provato ma non riuscivo a farlo funzionare per un vettore di stringhe simili.Ho modificato il mio post originale per spiegare ulteriormente il problema. –
il 'str_locate_all (string = y, ',')' troverà tutte le posizioni dell'indice del tuo pattern (virgola nel tuo caso) che possono quindi essere applicate per selezionare il vettore o la colonna. – John