miandai

  •  
  • 2013年6月7日
  • 注册于 2013年4月11日
  • 回复 第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