转换输入数据

时间:2012-03-10 13:44:39

标签: r

我在R中进行了一些改造。 我的csv文件结构如下:

User Movie Rating
1    34     4
1    55     3
1    24     5
2    55     1
2    67     5
2    24     3

等等。我想得到一个像这样的矩阵(如果用户没有评价电影,插入0作为评级):

24   34    55    67
 5   4     3      0
 3   0     1      5

其中每行是单个用户,列是电影。所以每个条目都是电影的评级。我想知道在我阅读上面的csv之后是否在R中有一个简单的解决方案。我试着用python做一个解决方法......

非常感谢。

此致

1 个答案:

答案 0 :(得分:1)

> inp <- read.table(text="User Movie Rating
+ 1    34     4
+ 1    55     3
+ 1    24     5
+ 2    55     1
+ 2    67     5
+ 2    24     3
+ ", header=TRUE)
> xtabs(Rating ~ User+Movie, data=inp)
    Movie
User 24 34 55 67
   1  5  4  3  0
   2  3  0  1  5