为了账号安全,请及时绑定邮箱和手机立即绑定

从引用的值列表中拆分 DataFrame 列

从引用的值列表中拆分 DataFrame 列

烙印99 2022-07-19 15:42:30
我有一个带有“分类”列的 pandas DataFrame(视频游戏列表)。在该列中,我们可以找到:简单分类:“RPG”或“Action”多个分类:《动作冒险RPG Roguelike》、《Action Shoot'em Up Wargame》你注意到了吗?没有分隔符...当然,我需要将其拆分为一个新列,带有分隔符(或具有每个单独元素的其他结构)。所以"Action Adventure RPG Roguelike" => "Action, Adventure, RPG, Roguelike""Action Shoot'em Up Wargame" => "Action, Shoot'em Up, Wargame"我不能使用空间来分割,也不能使用大写字母(“ Shoot'em Up”是一个值)。所以,在我看来,我需要创建一个函数来应用于该列,并从值列表中检查(手工制作),找到所有出现并返回带有分隔符的字符串......像这样的东西:classification = ["Action", "Adventure", "RPG", "Roguelike", "Shoot'em Up", "Wargame"...]def magic_tric(data):   # do the magic, comparing each classification possible / data   return data_separated但我不知道该怎么做。以最有效的方式...有人能帮我吗...?提前致谢。
查看完整描述

1 回答

?
胡说叔叔

TA贡献1804条经验 获得超8个赞

这是一个想法..使用str.findall


                                0

0  Action Adventure RPG Roguelike

1      Action Shoot'em Up Wargame


sep = ["Action", "Adventure", "RPG", "Roguelike", "Shoot'em Up", "Wargame"]

pattern = '|'.join(sep)



pd.DataFrame(df[0].str.findall(pattern).tolist())

        0            1        2          3

0  Action    Adventure      RPG  Roguelike

1  Action  Shoot'em Up  Wargame       None


查看完整回答
反对 回复 2022-07-19
  • 1 回答
  • 0 关注
  • 63 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信