R

时间:2016-12-01 21:15:46

标签: r merge subset

我有一个R的电影数据集,有超过5,000个观测资料和另一个电影数据集,其中包含他们所依据的书籍,只有超过1,600个观测资料。我想将数据集合并,并将其子集化为仅基于书籍的电影。

以下是来自电影数据集的几个示例数据:

movie_title      duration    gross     content_rating    year
Avatar           178       760505847     PG-13           2009
The Jungle Book  106       362645141     PG              2016

还有一对来自图书数据集:

movie_title                         book        author          released
Hunger Games: Mockingjay, Part 2    Mockingjay  Suzanne Collins 2015
Insurgent                           Insurgent   Veronica Roth   2015

我只关心他们共同的movie_titles。 我试图通过电影标题合并两个数据集,它说有0个观察结果。

movies<-merge(imdb.movies,booklist, by="movie_title")

我也尝试使用此代码过滤它:

filter(imdb.movies, imdb.movies$movie_title==booklist$movie_title)

将它们与此代码结合起来:

    combined_movies<- imdb.movies[imdb.movies$movie_title==booklist$movie_title]

这些似乎都不起作用。有没有办法比较imdb.movies$movie_title==booklist$movie_title是否只保持观察结果相同?

1 个答案:

答案 0 :(得分:0)

使用dplyr你可以使用:

inner_join(imdb.movies,booklist)

假设两个数据框中的movie_title列名相同且移动名称/书名相同。