我在excel文件中有这些数据(每一行在一个单元格中):
df = pd.read_excel("planilha.xlsx")
col_categorias = df['Categorias']
返回
0 wordpress, criação de sites
1 criação de sites
2 e-commerce, criação de sites, wordpress
3 marketing digital, vendas
4 marketing digital, vendas, google ads, negócios
5 marketing digital, google ads
6 e-commerce, vendas, negócios
7 design, negócios
8 youtube, criação de conteúdo
9 marketing digital, google ads, youtube
10 programação, wordpress
我试图创建一个列表的列表,但我得到所有的值在一起。
lista_categorias = col_categorias.tolist()
返回
['wordpress, criação de sites', 'criação de sites', 'e-commerce, criação de sites, wordpress', 'marketing digital, vendas', 'marketing digital, vendas, google ads, negócios', 'marketing digital, google ads', 'e-commerce, vendas, negócios', 'design, negócios', 'youtube, criação de conteúdo', 'marketing digital, google ads, youtube', 'programação, wordpress']
输出应该是:
lista_categorias = [
['wordpress', 'criação de sites'],
['criação de sites'],
['e-commerce', 'criação de sites', 'wordpress'],
['marketing digital', 'vendas'],
['marketing digital', 'vendas', 'google ads', 'negócios'],
['marketing digital', 'google ads'],
['e-commerce', 'vendas', 'negócios'],
['design', 'negócios'],
['youtube', 'criação de conteúdo'],
['marketing digital', 'google ads', 'youtube'],
['programação', 'wordpress']
]
谢谢
您可以使用str.split()
将每行用逗号分隔成一个列表。
然后,使用tolist()
制作整体列表,如下所示:
lista_categorias = df['Categorias'].str.split(r',s*').tolist()
结果:
print(lista_categorias)
[['wordpress', 'criação de sites'],
['criação de sites'],
['e-commerce', 'criação de sites', 'wordpress'],
['marketing digital', 'vendas'],
['marketing digital', 'vendas', 'google ads', 'negócios'],
['marketing digital', 'google ads'],
['e-commerce', 'vendas', 'negócios'],
['design', 'negócios'],
['youtube', 'criação de conteúdo'],
['marketing digital', 'google ads', 'youtube'],
['programação', 'wordpress']]
可以用逗号分隔列表中的字符串:
lista_categorias = [line.split(", ") for line in col_categorias.tolist()]