实际上我还是Python和Pandas的新手,不知道该怎么做。
基本概述:我必须创建一个位置推荐系统。我收到了一些venueID
和sub(!)categoryID
的四方数据。但我的建议应该考虑主要类别的所有数据。所以我必须将主要类别分配到我的场地。
我的foursquare数据框如下所示:
UserID VenueID CategoryID CategoryName
470 49bbd6c0f964a520f4531fe3 4bf58dd8d48988d127951735 Arts & Crafts Store
979 4a43c0aef964a520c6a61fe3 4bf58dd8d48988d1df941735 Bridge
69 4c5cc7b485a1e21e00d35711 4bf58dd8d48988d103941735 Home (private)
我已经创建了一个包含主要类别及其子类别的数据框:
Main Category Name Main Category ID Sub Categories Name Sub Categories ID
0 Arts & Entertainment 4d4b7104d754a06370d81259 Amphitheater 56aa371be4b08b9a8d5734db
1 Arts & Entertainment 4d4b7104d754a06370d81259 Aquarium 4fceea171983d5d06c3e9823
2 Arts & Entertainment 4d4b7104d754a06370d81259 Arcade 4bf58dd8d48988d1e1931735
基本上我想:如果VenueID's Category ID
(来自foursquare df)位于categories_df
,则在新数据框中将venueID
与相应的主category ID
对齐。我希望你能理解我的意思。
最后,我只想使用主要类别作为我的推荐,而不考虑子类别。
提前致谢!
答案 0 :(得分:0)
df_foursquare.merge(df_categories, how='left', left_on=['CategoryID'], right_on=['Sub Categories ID'])