基于内容的推荐算法如何简便的对豆瓣图书top250数据集进行简单的预处理以及代码
时间: 2023-06-27 14:01:08 浏览: 167
hadoop mapreduce实现 基于内容的推荐算法+源代码+文档说明
豆瓣图书top250数据集是一个包含了豆瓣评分最高的250本图书的数据集,可以用于基于内容的图书推荐。下面是一个简单的预处理代码示例:
```python
import pandas as pd
import numpy as np
# 加载数据集
df = pd.read_csv('douban_book_top250.csv')
# 删除重复项
df.drop_duplicates(subset=['book_name'], inplace=True)
# 将出版年份转化为数字,并填充缺失值
df['pub_year'] = df['pub_year'].str.extract('(\d+)')
df['pub_year'] = df['pub_year'].fillna(0).astype(int)
# 将评分人数转化为数字,并填充缺失值
df['rating_num'] = df['rating_num'].str.extract('(\d+)')
df['rating_num'] = df['rating_num'].fillna(0).astype(int)
# 将价格转化为数字,并填充缺失值
df['price'] = df['price'].str.extract('(\d+\.?\d*)')
df['price'] = df['price'].fillna(0).astype(float)
# 将标签转化为列表
df['tags'] = df['tags'].str.split('/')
# 将作者转化为列表
df['author'] = df['author'].str.split('/')
# 将出版社转化为列表
df['publisher'] = df['publisher'].str.split('/')
# 重置索引
df.reset_index(drop=True, inplace=True)
# 保存处理后的数据集
df.to_csv('douban_book_top250_clean.csv', index=False)
```
以上代码会将豆瓣图书top250数据集进行以下处理:
1. 删除重复项
2. 将出版年份、评分人数和价格转化为数字,并填充缺失值
3. 将标签、作者和出版社转化为列表
4. 重置索引并保存处理后的数据集
处理后的数据集可以用于基于内容的推荐算法的实现。
阅读全文