0
我用下面的代碼加載一些數據。爲什麼read.table會導致多行放在一行中?
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文件中,所有的rownumbers也都與id號碼(第二個數字)相對應。但是在R中,一些行被放置一行。
有誰知道這個問題是什麼,以及我如何能再次獲得一行每行數?
編輯:順便說一句,如果有人想複製,這裏是我使用的數據集(MovieLens)http://grouplens.org/datasets/movielens/
使用'\ n'作爲列(變量)分隔符沒有意義,因爲'read.table'使用它來分割行(觀察值)。如果你想把每行作爲一個元素使用'readLines()'。 – ilir 2014-12-02 12:30:36