Несколько лет спустя ...
read.table
и его производные, такие как read.csv
, теперь имеют аргумент text
, поэтому вам больше не нужно возиться с textConnection
s напрямую.
read.table(text = "
x y z
1 1.9 'a'
2 0.6 'b'
", header = TRUE)
Основное использование для textConnection
- это когда люди, которые задают вопросы по SO, просто выводят свои данные на экран, а не пишут код, чтобы позволить авторам генерировать его самостоятельно. Например,
Бла-бла-бла, я застрял здесь, мои данные, пожалуйста, помогите OMG
x y z
1 1,9 'a'
2 0,6 'b'
и т. д.
В этом случае вы можете скопировать текст с экрана и обернуть его при вызове в textConnection
, например:
the_data <- read.table(tc <- textConnection("x y z
1 1.9 'a'
2 0.6 'b'"), header = TRUE); close(tc)
Намного приятнее, когда спрашивающие предоставляют код, например:
the_data <- data.frame(x = 1:2, b = c(2.9, 0.6), c = letters[1:2])
Когда вы используете свои собственные данные, вам не нужно использовать textConnection
.
my_data <- read.csv("my data file.csv")
должно хватить.