当2列具有相同值时,Pandas列布局被误解?

时间:2018-03-17 20:24:47

标签: python pandas data-science

在读入具有多个列的pandas的数据集中,两列对于某些行具有相同的值。在这种情况下,似乎Pandas

无法正确解释列布局

我几乎是一名熊猫初学者,所以我当然没有掌握所有大熊猫的细微之处,但这种行为至少可以说是奇怪的。数据集是2016 kickstarter projects from Kaggle,我保存2016年数据集的zip文件,我删除了其他数据集。该集合确实有12列,一开始我对'main_category'和'state'最感兴趣。我希望能够了解最常见的main_categories以及不同的状态'失败','成功','暂停'等。

我使用以下代码对此进行排序:

import numpy as np
import pandas as pd
ks = pd.read_csv('kickstarter-projects.zip', quotechar='"', encoding='latin1')
ks['total']=ks.groupby('main_category').transform('count')['ID']
ks.groupby(['total','main_category','state']).count().reset_index().sort_values(['total','ID'], ascending=False) 

上面的结果有些奇怪:状态包含上面提到的预期值,还有一些其他数值。检查csv文件,我发现这些值来自相邻列,只有列'category'和'main_category'共享相同值的情况('Publishing','Publishing')

    total   main_category state counts->
638 34233   Publishing  live    448 448 448 448 448 448 448 
640 34233   Publishing  suspended   51  51  51  51  51  51  
626 34233   Publishing  0   2   2   2   2   2   2   2   
627 34233   Publishing  1   2   2   2   2   2   2   2

将类别更改为(全局)为CSV文件中的“Pub lishing”,解决了它,数字状态消失了。这种行为与“音乐”,“电影和电影”等其他组合一致。视频'。我做错了什么或出了什么问题?

0 个答案:

没有答案