将字符串从一列提取到新列 – Pandas
Extract string from one column to new column – Pandas
我有一列需要提取和分离所有类型,然后将这些提取类型添加回数据框。我尝试实施 str.extract()
方法,但没有成功。
列示例:
|title||genres|
|-----||------|
|Cowboy Bebop||['Comedy', 'Dementia', 'Horror', 'Seinen']|
理想的新专栏:
|title||genres|
|-----||------|
|Cowboy Bebop||'Comedy'|
|CowBoy Bebop||'Dementia'|
|CowBoy Bebop||'Horror'|
|CowBoy Bebop||'Seinen'|
这将为您提供所需的结果 .explode()
data = {'title' : ['Cowboy Bebop'], 'genres' : [['Comedy', 'Dementia', 'Horror', 'Seinen']]}
df = pd.DataFrame(data)
df = df.explode('genres')
df
df = df.explode('genres').reset_index(drop=True)
输出:
>>> df
title genres
0 Cowboy Bebop Comedy
1 Cowboy Bebop Dementia
2 Cowboy Bebop Horror
3 Cowboy Bebop Seinen
请注意,您可能需要将 genres
列中的值转换为实际列表,因为它可能看起来像一个列表,但实际上是一个字符串。如果是这样,运行 在上面之前:
import ast
df['genres'] = df['genres'].apply(ast.literal_eval)
我有一列需要提取和分离所有类型,然后将这些提取类型添加回数据框。我尝试实施 str.extract()
方法,但没有成功。
列示例:
|title||genres|
|-----||------|
|Cowboy Bebop||['Comedy', 'Dementia', 'Horror', 'Seinen']|
理想的新专栏:
|title||genres|
|-----||------|
|Cowboy Bebop||'Comedy'|
|CowBoy Bebop||'Dementia'|
|CowBoy Bebop||'Horror'|
|CowBoy Bebop||'Seinen'|
这将为您提供所需的结果 .explode()
data = {'title' : ['Cowboy Bebop'], 'genres' : [['Comedy', 'Dementia', 'Horror', 'Seinen']]}
df = pd.DataFrame(data)
df = df.explode('genres')
df
df = df.explode('genres').reset_index(drop=True)
输出:
>>> df
title genres
0 Cowboy Bebop Comedy
1 Cowboy Bebop Dementia
2 Cowboy Bebop Horror
3 Cowboy Bebop Seinen
请注意,您可能需要将 genres
列中的值转换为实际列表,因为它可能看起来像一个列表,但实际上是一个字符串。如果是这样,运行 在上面之前:
import ast
df['genres'] = df['genres'].apply(ast.literal_eval)