- 真不错,学习了!
回复 第10楼 的 谢益辉:以前以为read.table只能读取文件,不知道怎么读取现成的数据。学习了。[s:13]
在帖子http://cos.name/cn/topic/106840 中找到一个解决方法:
1、用readLines读取数据:rl<-readLines("filename");
2、再用gsub把分隔符替换成逗号:gb<-gsub("\\[=\\]",",",rl);
3、最后用谢益辉的方法:read.table(textConnection(gb), sep = ',')大功告成!
不知道有没有更好的方法,像read.csv一样一步到位,只是允许分隔符为多个。
有些数据的分隔符是3个字符,但是read.csv函数中sep只能是1个字符,怎么读取呢?难道非得先用readLines读取,然后再用strsplit处理吗?
例如下面的数据,分隔符为“[=]”
T<=>3939[=]P<=>360chrome.exe[=]I<=>4376[=]U<=>tieba.baidu.com/f[=]A<=>3033e[=]B<=>560486[=]V<=>5.3.0.806
T<=>3942[=]P<=>360chrome.exe[=]I<=>4376[=]U<=>tieba.baidu.com/f[=]A<=>3033e[=]B<=>e046e[=]V<=>5.3.0.806
T<=>3944[=]P<=>360chrome.exe[=]I<=>4376[=]U<=>about:blank[=]A<=>3033e[=]B<=>604a8[=]V<=>5.3.0.806
T<=>3946[=]P<=>360chrome.exe[=]I<=>4376[=]U<=>tieba.baidu.com/p/1638664170[=]A<=>3033e[=]B<=>604a8[=]V<=>5.3.0.806
T<=>4195[=]P<=>360chrome.exe[=]I<=>4376[=]U<=>tieba.baidu.com/f[=]A<=>3033e[=]B<=>e046e[=]V<=>5.3.0.806
T<=>4198[=]P<=>360chrome.exe[=]I<=>4376[=]U<=>tieba.baidu.com/f[=]A<=>3033e[=]B<=>580486[=]V<=>5.3.0.806
T<=>4202[=]P<=>360chrome.exe[=]I<=>4376[=]U<=>tieba.baidu.com/p/1638440985[=]A<=>3033e[=]B<=>130488[=]V<=>5.3.0.806
T<=>4217[=]P<=>360chrome.exe[=]I<=>4376[=]U<=>image.baidu.com/i[=]A<=>3033e[=]B<=>17047c[=]V<=>5.3.0.806
T<=>4219[=]P<=>360chrome.exe[=]I<=>4376[=]U<=>image.baidu.com/i[=]A<=>3033e[=]B<=>17047c[=]V<=>5.3.0.806
</p>
回复 第1楼 的 ruijie_guo:搞定了,不应该用encoding="UTF-8"参数,而应该用fileEncoding="UTF-8"[s:12]
回复 第1楼 的 ruijie_guo:怎么没人回答呢?我今天也遇到了这个问题。论坛太冷清了。
LZ你解决这个问题了没?我把文件重新保存成ASCII格式,就可以成功读取了,但是文件太多,还是想找个能直接读取UTF-8格式的方法。
- 错误于load(con) : 找不到对象'con',这是怎么回事呢?
第一次使用R,遇到好多问题啊! - 今天试了一天Rweibo,但在授权网页老是出现redirect_uri_mismatch错误,原来是注册授权时少个步骤,解决步骤可查看
http://qqy620.diandian.com/post/2012-09-20/40039410248