我正在尝试将大数据集读入R中的数据框。数据看起来像这样(但是有很多很多列):
\xk:1520890\xdt:2015031901053801\xty:M\nty:ID\qty:0.00\qoh:0.00\qt:0.00\qp:0.00\wqty:\qre:0
\xk:1520897\xdt:2015031901064000\xty:M\nty:IA\qty:0.00\qoh:0.00\qt:0.00\qp:0.00\wqty:\qre:0
\xk:1520900\xdt:2015031901071000\xty:M\nty:ID\qty:0.00\qoh:0.00\qt:0.00\qp:0.00\wqty:\qre:0
当然有办法做到这一点,但我不知道在哪里看。
答案 0 :(得分:1)
在类似UNIX的系统中(但在R中)你可以这样做:
system("tr -d '\\' < test.txt")
#-----output-------
xk:1520890xdt:2015031901053801xty:Mnty:IDqty:0.00qoh:0.00qt:0.00qp:0.00wqty:qre:0
xk:1520897xdt:2015031901064000xty:Mnty:IAqty:0.00qoh:0.00qt:0.00qp:0.00wqty:qre:0
xk:1520900xdt:2015031901071000xty:Mnty:IDqty:0.00qoh:0.00qt:0.00qp:0.00wqty:qre:0
我不确定你是否给出了完整的描述,但是在我的Mac上,这成功地符合我的想法(假设文件名为test.txt&#34;在你的工作目录中:
inp <- system("tr -d '\\' < test.txt", intern=TRUE)
# sed might work too, but I couldn't get the correct sub-pattern.
gsub("[^0-9.]+", " ", inp)
#---------------
[1] " 1520890 2015031901053801 0.00 0.00 0.00 0.00 0"
[2] " 1520897 2015031901064000 0.00 0.00 0.00 0.00 0"
[3] " 1520900 2015031901071000 0.00 0.00 0.00 0.00 0"
如果您有Windows计算机,则可能需要使用shell
。