Pandas 实战 Kagge 百万级影评数据集之数据清洗和特征工程

split 本项目基于 Kaggle 电影影评数据集,与大家一起实战,包括:

  • 如何使用 Pandas 做数据清洗和特征工程;
  • 如何进行数据探索性分析 (EDA);

学会数据分析的基本思维、基本技能和工具。包括:使用数据分析常用工具 numpypandas,绘图工具 matplotlibpyecharts.

本项目需要导入的包:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from pyecharts.charts import Bar,Grid,Line,Pie
import pyecharts.options as opts
from pyecharts.globals import ThemeType

1 导入数据

数据来自 Kaggle,共包括如下三个文件:

  1. movies.dat ,共有 34000+ 行记录
  2. ratings.dat,共有 810000+ 行记录
  3. users.dat,共有 60000+ 行记录

百度网盘的下载链接:

https://pan.baidu.com/s/1Na8RCfpnyFrm1aTtMgiDuQ 提取码: wvnx

首先,导入电影数据文件 movies.dat,它共包括 3 个字段:Movie ID, Movie Title, Genre,分别表示电影 ID、电影名称、题材(可能属于多个题材,中间用 | 分割),使用 pandas 导入此文件:

import pandas as pd
movies = pd.read_csv('../dataset/movietweetings/movies.dat', delimiter='::', 
engine='python', header=None, names = ['Movie ID', 'Movie Title', 'Genre'],encoding='utf-8')
movies.head()

导入后的数据,前 5 行显示如下:

其次,导入用户相关的数据文件 users.dat

users = pd.read_csv('../dataset/movietweetings/users.dat', delimiter='::', 
engine='python', header=None, names = ['User ID', 'Twitter ID'], encoding='utf-8')
users.head()

它一共有 2 列,分别表示用户 ID, Twitter ID, 前 5 行数据显示结果:

同样方法导入 rating.data,关于评分记录:

ratings = pd.read_csv('../dataset/movietweetings/ratings.dat', delimiter='::', 
engine='python', header=None, names = ['User ID', 'Movie ID', 'Rating', 'Rating Timestamp'], encoding='utf-8')

ratings.head()

前 5 行结果显示如下,一共有 4 列。分别表示用户 ID, 电影 ID,电影得分,评分时间戳。

read_csv 使用说明

  • 第一个参数表示文件的相对路径
  • 第二个关键字参数:delimiter='::',表示文件分隔符使用::
  • 后面几个关键字参数分别代表使用的引擎,文件没有表头,所以 header 为None;
  • 导入后 DataFrame 的列名,使用 names 关键字设置,这个参数大家可以记住,比较有用。

2 数据预览

前面提到过,Pandas 提供 2 个很好用的方法:infodescribe

info 统计出数据的每一列类型,是否为 null 和个数;

describe 描述出数据每一列的统计学属性信息,

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值