python导入dat数据_Kaggle影评数据集,Python数据分析小例子14

1 了解数据

数据来自kaggle,共包括三个文件:

  1. movies.dat
  2. ratings.dat
  3. users.dat

movies.dat包括三个字段:['Movie ID', 'Movie Title', 'Genre']

使用pandas导入此文件:

import pandas 

导入后,显示前5行:

9f7f8a94ec0d12673a582957246cc7af.png

依次导入其他两个数据文件

users.dat:

'./data/movietweetings/users.dat', delimiter=

5f4498724ed7d8a5b0e07529bf7e2e2b.png

rating.data:

'./data/movietweetings/ratings.dat', delimiter=

b48c69464c9b8f5f0629bfaa53e3871b.png

2 read_csv使用说明

说明,本次导入dat文件使用pandas.read_csv函数。

第一个位置参数./data/movietweetings/ratings.dat 表示文件的相对路径

第二个关键字参数:delimiter='::',表示文件分隔符使用::

后面几个关键字参数分别代表使用的引擎,文件没有表头,所以headerNone;

导入后dataframe的列名使用names关键字设置,这个参数大家可以记住,比较有用。

3 处理组合值

movies字段Genre表示电影的类型,可能有多个值,分隔符为|,取值也可能为None.

针对这类字段取值,可使用Pandas中Series提供的str做一步转化,注意它是向量级的,下一步,如Python原生的str类似,使用contains判断是否含有comedy字符串:

'comedy',case=

注意使用的两个参数:casena

case为 False,表示对大小写不敏感;na Genre列某个单元格为NaN时,我们使用的充填值,此处填充为False

返回的mask是一维的Series,结构与 movies.Genre相同,取值为True 或 False.

观察结果:

d4facb5d448f09b688b68dc10c732dd3.png

验证结果,打印movies表的前10行,验证OK,只有index为5,6的行,其Genre取值包括 comedy.

493896cb3a8b074e94dd4f758eac076d.png

4 提取目标行记录

得到掩码mask后,pandas非常方便地能提取出目标记录:

comedy = movies[mask]
comdey_ids = comedy['Movie ID']

以上,在pandas中被最频率使用,不再解释。

因为字段 Movie ID 中间有空格,所以不能使用comedy.Movie ID提取这列值。

看结果comedy_ids.head(10):第一列为索引列,依然对应movies表的index,第二列为Movie ID,这些电影的Genre都包括comedy.

ffa8748efb93de2eafca23083dd5c7e1.png

限于篇幅,限于时间,下一篇接着聊~ 所有小例子: Python之路200个小例子,在线网页版来了,从此学习更方便! 本篇所用电影数据集,关注下方公众号,并在里面回复: data

3497da647265965bcde89d73e9add410.png

长按关注

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值