我试图使用iloc访问Pandas数据帧中的一个列的索引号:
new = df_new.iloc[:,0]抛出错误:
IndexingError:太多索引器
iloc上的其他帖子显示他们工作得很好。不明白为什么在我身上发生这种事。救命啊!!
数据框架是:
游戏3862娱乐535教育453图片与视频349公用事业248健康与健身180生产力178社交网络167 144音乐138购物122体育114书112财务104旅游81新闻75天气72参考64食品饮料63商业57导航46医疗23目录10
并由代码创建:
df_new=obj_df["prime_genre"].value_counts()按另一个数据帧的类别数计算。
发布于 2018-07-11 15:40:44
obj_df["prime_genre"].value_counts()返回一个pd.Series (参考文献),它只有一个维度。语法[:, 0]意味着选择所有行和索引0的列。但是,因为这是一个系列,所以使用行/列进行切片是没有意义的。
使用
.iloc[0]如果你只想要第一个元素。
如果要继续使用df,请将此pd.Series分配给列。
obj_df['counts'] = obj_df["prime_genre"].value_counts()然后您可以使用obj_df[:, 0]]进行切片。
如果您想要索引,只需使用
obj_df["prime_genre"].value_counts().index或者,如果要使用iloc表示法
obj_df["prime_genre"].value_counts().reset_index().iloc[:,0]https://stackoverflow.com/questions/51289323
复制相似问题