我使用以下代码加载一些数据。
movies <- read.table("movies.dat", header=FALSE, sep="\n")
大部分数据都加载得很好,如下所示:
58 58::Postman, The (Postino, Il) (1994)::Comedy|Drama|Romance
59 59::Confessional, The (Confessionnal, Le) (1995)::Drama|Mystery
60 60::Indian in the Cupboard, The (1995)::Adventure|Children|Fantasy
每行的第一个数字是R中的行号,其余的是一列中的字符串。 但有些行显示如下:
111 114::Margarets Museum (1995)::Drama
115::Happiness Is in the Field (Bonheur est dans le pré, Le) (1995)::Comedy
116::Anne Frank Remembered (1995)::Documentary
117::Young Poisoners Handbook, The (1995)::Crime|Drama
再次,粗体111是行号。在行111中,放置了4行而不是仅一行。我检查了源.dat文件,格式似乎没有区别导致这个。在原始.dat文件中,所有rownumber也与id号(第二个数字)对应。但在R中,有些行被放置在一个rownumber中。
有谁知道问题是什么以及如何再次获得每行一行?
编辑:顺便说一下,如果有人想要复制,这里是我使用的数据集(MovieLens)http://grouplens.org/datasets/movielens/
答案 0 :(得分:0)
很抱歉,显然我误用了分隔符(刚开始使用R)。使用Ilir建议使用函数readLines()解决了它。我使用它而不是read.table来读movies.dat。
电影&lt; - readLines(“movies.dat”)
然后将其放入数据框
dataframe&lt; - data.frame(movies)
感谢Ilir!