我有来自 kaggle 的这个 Youtube 频道数据集,其中我想创建一个新的数据框,其中 category_name 仅作为音乐。这是原始数据框-df = pd.read_csv('channels.csv')df.head(3)输出是category_id category_name channel_id country description followers join_date location picture_url profile_url title trailer_title trailer_url videos0 24 Entertainment UC-lHJZR3Gqxm24_Vd_AJ5Yw United States I make videos. 69896406 2010-04-29 NaN https://yt3.ggpht.com/a-/AN66SAztY6oYWZnS1Cae9... http://www.youtube.com/channel/UC-lHJZR3Gqxm24... PewDiePie bitch lasagna https://www.youtube.com/watch?v=6Dh-RL__uN4 36491 10 Music UCq-Fj5jknLsUf-MWSy4_brA India \ 69471946 2006-03-13 NaN https://yt3.ggpht.com/a-/AN66SAxPfKnfHAnAs0rOq... http://www.youtube.com/channel/UCq-Fj5jknLsUf-... T-Series Guru Randhawa: GOLIMAAR Lyrical Video | Bhusha... https://www.youtube.com/watch?v=nJ1f44JvlC8 128202 24 Entertainment UCIwFjwMjI0y7PDBVEO9-bkQ NaN Help change the world. OUR album \'Purpose\' o... 41858494 2007-01-15 NaN https://yt3.ggpht.com/a-/AN66SAzY-4LlEPxP9YOux... http://www.youtube.com/channel/UCIwFjwMjI0y7PD... Justin Bieber DJ Khaled - No Brainer (Official Video) ft. Ju... https://www.youtube.com/watch?v=kxloC1MKTpg 132我想创建一个新的数据框,我只想存储具有 category_name = Music 的值。我已经尝试使用 groupby 和 apply 函数但是没有得到想要的结果
1 回答

阿波罗的战车
TA贡献1862条经验 获得超6个赞
您可能想要使用布尔切片。
is_music = df['category_name'] == 'Music'
new_df = df[is_music]
这是有效的,因为is_music它是一个布尔数组,指示category_name某行的列是否等于Music。在上面的三行示例中,is_music看起来像
>>> is_music
0 False
1 True
2 False
然后,我们可以使用此信息仅选择数据框中is_music为的行True。这就是第二行代码要实现的目标。当然,您也可以将所有这些写在一行中:
new_df = df[df['category_name'] == 'Music']
添加回答
举报
0/150
提交
取消