从不重复的行值创建列表

2024-09-27 00:15:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要从数据帧中提取以下单词

car+ferrari

数据集是

                   Owner        Sold
type
car+ferrari         J.G         £500000
car+ferrari         R.R.T.      £276,550 
car+ferrari        
motobike+ducati
motobike+ducati
...

我需要创建一个列表,列出类型中的单词,但要分别区分它们。所以在这种情况下,我只需要carferrari

名单应该是

my_list=['car','ferrari']

没有重复的。 所以我应该做的是选择类型car+ferrari并提取所有单词,将它们添加到一个列表中,如上图所示,没有重复项(我有许多car+ferrari行,但由于我需要创建一个包含术语的列表,我只需要提取这些术语一次)

任何帮助都将不胜感激

编辑:类型列是索引


Tags: 数据类型列表type情况单词car区分
1条回答
网友
1楼 · 发布于 2024-09-27 00:15:32
def lister(x): #function to split by '+'
    return set(x.split('+'))
    
df['listcol']=df['type'].apply(lister) # applying the function on the type column and saving output to new column 

添加@AMC建议的一种内置解决方案,以拆分熊猫系列:

df['type'].str.split(pat='+')

详情请参阅pandas.Series.str.split

将熊猫索引转换为系列:

pd.Series(df.index)

在索引上应用函数:

pd.Series(df.index).apply(lister)

pd.Series(df.index).str.split(pat = '+')

df.index.to_series().str.split("+")

相关问题 更多 >

    热门问题