R-将带有“ \ t”和“ \ n”的字符串变量转换为数据帧

时间:2019-10-18 02:28:35

标签: r

我有一个包含字符串的变量:

"A\tB\n\C\tD"

如何将其转换为这样的数据帧?

---------
| A | B |
---------
| C | D |
---------

我使用了这种解决方法:首先将其写入.txt文件,然后读取为.tsv文件。

writeLines("A\tB\n\C\tD", "A.txt")
B <- read.table("A.txt", header = FALSE, sep = "\t")

我非常确定,有一种更有效的方法可以在不创建新文件的情况下将其相互转换,但是我找不到它。

2 个答案:

答案 0 :(得分:1)

您正确使用read.table()

  • 使用read.table(text=your_string, sep="\t"),重点放在text参数上。
  • 通过text参数,您可以输入字符串而不是文件名。

此外,在您的变量字符串中,您在"A\tB\n\C\tD"之前的\中有一个C,我不知道这是否是错误,但是您是否接受了\,输入应该没问题(例如"A\tB\nC\tD"

答案 1 :(得分:0)

使用text=参数:

s <- "A\tB\nC\tD"
read.table(text = s, as.is = TRUE)
##   V1 V2
## 1  A  B
## 2  C  D