poligono pairs lineas linea grafico graficas graficar grafica ejemplos diagramas r header skip read.table read.csv

pairs - R read.table(), ¿cómo puedo leer el encabezado pero también omitir líneas?



poligono en r (5)

En lugar de read.table() , use una función readr como read_csv() , canalizada a dplyr::slice() .

library(readr) library(dplyr) dat <- read_csv("data.txt") %>% slice(-1)

Es muy rápido también.

Data.txt:

Index;Time; 1;2345; 2;1423; 3;5123;

El código:

dat <- read.table(''data.txt'', skip = 1, nrows = 2, header =TRUE, sep ='';'')

El resultado:

X1 X2345 1 2 1423 2 3 5123

Espero que el encabezado sea Índice y Tiempo, de la siguiente manera:

Index Time 1 2 1423 2 3 5123

¿Cómo puedo hacer eso?


Estás utilizando omitir incorrectamente. Prueba esto:

dat <- read.table(''data.txt'', nrows = 2, header =TRUE, sep ='';'')[-1, ]


La solución utilizando fread desde data.table .

require(data.table) fread("Data.txt", drop = "V3")[-1]

Resultado:

> fread("Data.txt", drop = "V3")[-1] Index Time 1: 2 1423 2: 3 5123


Me temo que no hay una forma directa de lograr esto. O bien lee la tabla completa y luego elimina las líneas que no desea, o si lee la tabla dos veces y le asigna el encabezado más tarde:

header <- read.table(''data.txt'', nrows = 1, header = FALSE, sep ='';'', stringsAsFactors = FALSE) dat <- read.table(''data.txt'', skip = 2, header = FALSE, sep ='';'') colnames( dat ) <- unlist(header)


Usted podría (en la mayoría de los casos), eliminar el final ; escriba un nuevo archivo sin la segunda fila (que en realidad es la primera fila debido al encabezado), y use read.csv lugar de read.table

> txt <- "Index;Time; 1;2345; 2;1423; 3;5123;" > writeLines(sub(";$", "", readLines(textConnection(txt))[-2]), ''newTxt.txt'') > read.csv(''newTxt.txt'', sep = ";") ## Index Time ## 1 2 1423 ## 2 3 5123