【发布时间】:2020-03-20 16:20:25
【问题描述】:
基本上我正在尝试规范化数据集以填充 sql 表。
我已经使用 json_normalize 从流派列中创建了一个单独的数据集,但我不知道如何转换这两个列,如上图所示。
我们将非常感谢您提出一些建议。
【问题讨论】:
-
避免将示例数据添加为图片,无法将其复制并粘贴到编辑器中以供我们自己使用。将您的示例数据添加为文本。
标签: python json pandas denormalized
基本上我正在尝试规范化数据集以填充 sql 表。
我已经使用 json_normalize 从流派列中创建了一个单独的数据集,但我不知道如何转换这两个列,如上图所示。
我们将非常感谢您提出一些建议。
【问题讨论】:
标签: python json pandas denormalized
如果genre_id是唯一的数值(如图),你可以使用如下:
#find all occurrences of digits in the column and convert the list items to comma separated string.
df['genre_id'] = df['genres'].str.findall(r'(\d+)').apply(', '.join)
#use pandas.DataFrame.explode to generate new genre_ids by comma separating them.
df = df.assign(genre_id = df.genre_id.str.split(',')).explode('genre_id')
#finally remove the extra space
df['genre_id'] = df['genre_id'].str.lstrip()
#if required create a new dataframe with these 2 columns only
df = df[['id','genre_id']]
【讨论】: