pandas是py科学计算中一个常用的包,其中常见的两种数据类型就是DataFrame和Series(两种对象)。
在调用这两个方法的时候,需要注意原索引。
如series_film是一个Series,它的index是从0开始的,values其实就是电影名称:
另一个Series是series_rt,是电影评分
这是两个单独的Series,我们想要将其组合成一个Series,组成的这个Series的索引值是电影名,values是评分
也许你会这样写:
series_custom = pd.Series(series_rt,index=series_film)
但上面的式子是错的,这是由于series_rt是有索引的Series,而且其索引值是0-xx的数值,而你这里的定义的index是电影名称,所以这个组合的Series的值都是nan值。
这里其实是涉及到pandas里面一个索引一致性的概念,在这里不过多展开,但你需要注意,当你调用DataFrame和Series这两种对象时,若原数据本身是有索引值,你重新定义索引值得时候一定需要注意,有时得不到你想要的结果。
所以上面的那个语句只是起到了以原有索引重新排列,新索引会自动填充nan值,
正确的写法,去掉索引的影响:series_custom = pd.Series(series_rt.values,index=series_film)
版权声明:本文为weixin_39552037原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。