我正在将不可预测的字符集字符串放入表中,预期列数。我在选择合适的分离器时遇到了麻烦。
例如,示例表可能如下所示:
FILENAME:foo.txt
分离者:“\ u00AA”
ROW1,COL1:foo
ROW1,COL2:b,ar
ROW1,COL3:fo; obar
ROW1,COL4:bo \ tt
然后。
在R中,我会给出
read.table('foo.txt',sep =“\ u00AA”)
并获取
无效的'sep'值:必须是一个字节
我应该使用什么分隔符来避免与不可预测的字符串冲突? Unicode被接受到\ u007F,但R将更高的任何东西解释为多字节。为什么呢?
答案 0 :(得分:1)
想出来。谢谢你的灵感。
关键是设置comment.char =“”和quote =“”
例如,
read.table('foo',sep =“\ t”,quote =“”,comment.char =“”)
返回正确的data.frame。
答案 1 :(得分:0)
调试输入问题的方法是首先运行table(count.fields( 'file.nam'))
和oddities <- which(count.fields('file.nam') %in% odd_counts)
,然后查看readLines('fil.nam')[oddities]
版本或使用sed查看有问题的行。通常问题是注释字符,默认情况下为“#”,在这种情况下,解决方案是在comment.char=""
调用中使用read.delim(.)
。