对电影的关键字进行一次热烈的展示

时间:2019-07-26 17:10:26

标签: python pandas dataframe one-hot-encoding

我目前正在尝试创建一个表,该表给出一种电影的单幅表示形式以及描述它们的关键字。

这是我拥有的数据:

  1. 我的原始数据有一个名为INFO的列,每列电影都有一堆关键字:
movie_id    title   INFO
0           Avatar  [sam_worthington, zoe_saldana','future',...]
1           Specter [daniel_craig, christoph_waltz, sam_mendes,...]
...
  1. 我创建了一个名为“ basket”的数据框,其中电影的标题作为索引,所有关键字作为列(所有值均为零):
      sam_worthington   zoe_saldana james_cameron ... culture_clash 
Avatar     0.0               0.0          0.0       ...     0.0 

Pirates 
of the      0.0              0.0          0.0       ...     0.0
Caribbean: 
At World's
 End    

Spectre     0.0             0.0           0.0       ...     0.0

...

The Dark 
Knight 
Rises       0.0             0.0           0.0       ...     0.0 

我的目标是在DataFrame中用1填充,其中某个电影由某个关键字描述。像这样(如果关键字与该电影不匹配,则忽略;突出显示是出于演示目的):

      sam_worthington   zoe_saldana james_cameron ... culture_clash 
Avatar       1               1            1       ...       0.0 

Pirates 
of the      0.0              0.0          0.0       ...     1
Caribbean: 
At World's
 End    

Spectre     0.0             0.0           1         ...     0.0

...

The Dark 
Knight 
Rises       0.0            1           0.0      ...     0.0 


我已经根据我在网上找到的一些代码尝试了此操作,但是它不起作用:

for index, value in data['MOVIEINFO'].iteritems():
    for token in value:
            basket.loc[index][token]= 1

这可能没有多大意义(请记住,我是个新手)。有谁知道我该怎么做?

谢谢您的时间!

0 个答案:

没有答案