基本上,我正在尝试规范化数据集以填充sql表。
我已经使用json_normalize从genres列中创建了一个单独的数据集,但是我对如何转换两个列(如上图所示)感到困惑。
一些建议将不胜感激。
答案 0 :(得分:1)
如果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']]