访问嵌套列表中的第一个和最后一个元素

时间:2019-06-29 09:52:48

标签: python pandas list

我的DataFrame包含嵌套列表。我想将第一个和最后一个元素保留在子列表中,然后使列表变平。例如:

df1=pd.DataFrame({'names':[[['harry','james','potter'],['Albus','Dumbledore']],[['Peter','D.','Griffin'],['some','nice','string']]]})
df

,输出应该像这样

0  ['Harry Potter','Albus Dumbledore']
1  ['Peter Griffin','some string']

由于我是新手,所以我对双重循环有点挑战

2 个答案:

答案 0 :(得分:3)

您甚至可以在创建数据框后执行此操作:

df['names'] = df.names.apply(lambda x: [ ' '.join([i[0],i[-1]]) for i in x] )

答案 1 :(得分:2)

使用这一行:-

df1["names"] = [[j[0] + " " + j[-1]  for j in i] for i in df1["names"]]

输出

                              names
0  [harry potter, Albus Dumbledore]
1      [Peter Griffin, some string]