字符串用逗号和换行符分割
String Split with comma and newline
我有一个字符串看起来像
'"aaa","bbb","ccc","ddd","eee"\n"1","2","3","4","5"\n"6","7","8","9","10"'
我想用逗号和换行符拆分并将其转换为数据帧并获得输出
aaa bbb ccc ddd eee
1 2 3 4 5
6 7 8 9 10
有什么方法可以在 R 中实现吗?
这是一个使用 read.table
的选项,尽管为了使它起作用,我删除了一些引号、逗号和换行符(替换为实际的换行符)。
df <- read.table(header = TRUE,
text="aaa bbb ccc ddd eee
1 2 3 4 5
6 7 8 9 10")
输出:
aaa bbb ccc ddd eee
1 1 2 3 4 5
2 6 7 8 9 10
我假设你的字符串是
s = '"aaa","bbb","ccc","ddd","eee"\n"1","2","3","4","5"\n"6","7","8","9","10"'
那你可以试试
> read.table(text = s, header = TRUE, sep = ",")
aaa bbb ccc ddd eee
1 1 2 3 4 5
2 6 7 8 9 10
一个较短的(感谢@akrun 的评论)是 data.table::fread
> fread(s)
aaa bbb ccc ddd eee
1: 1 2 3 4 5
2: 6 7 8 9 10
或read.csv
(感谢@thelatemail的评论)
> read.csv(text = s)
aaa bbb ccc ddd eee
1 1 2 3 4 5
2 6 7 8 9 10
我有一个字符串看起来像
'"aaa","bbb","ccc","ddd","eee"\n"1","2","3","4","5"\n"6","7","8","9","10"'
我想用逗号和换行符拆分并将其转换为数据帧并获得输出
aaa bbb ccc ddd eee
1 2 3 4 5
6 7 8 9 10
有什么方法可以在 R 中实现吗?
这是一个使用 read.table
的选项,尽管为了使它起作用,我删除了一些引号、逗号和换行符(替换为实际的换行符)。
df <- read.table(header = TRUE,
text="aaa bbb ccc ddd eee
1 2 3 4 5
6 7 8 9 10")
输出:
aaa bbb ccc ddd eee
1 1 2 3 4 5
2 6 7 8 9 10
我假设你的字符串是
s = '"aaa","bbb","ccc","ddd","eee"\n"1","2","3","4","5"\n"6","7","8","9","10"'
那你可以试试
> read.table(text = s, header = TRUE, sep = ",")
aaa bbb ccc ddd eee
1 1 2 3 4 5
2 6 7 8 9 10
一个较短的(感谢@akrun 的评论)是 data.table::fread
> fread(s)
aaa bbb ccc ddd eee
1: 1 2 3 4 5
2: 6 7 8 9 10
或read.csv
(感谢@thelatemail的评论)
> read.csv(text = s)
aaa bbb ccc ddd eee
1 1 2 3 4 5
2 6 7 8 9 10