【发布时间】:2019-05-21 16:01:06
【问题描述】:
我有一个
list=[[a,2],[a,1],[a,3],[b,5],[b,7],[b,6],[c,20],[c,23],[c,30]].
如何获得每个字母的最大数字列表?并且该列表将其附加到包含每个字母的最高数字的另一个列表中?
我尝试过使用以下代码,但我是 python 编程的新手,我对数据结构或编程了解不多。
for letter in range(len(final)):
array1=[]
array2=[]
highestvalue=0
if final[letter][0] == final[letter+1][0]:
if final[letter][2] < final[letter+1][2]:
highestvalue=final[letter+1][2]
array1.append(final[letter][0])
array1.append(highestvalue)
array2.append(array1)
有没有办法将 [[a,3],[b,7],[c,30]] 排除在列表之外?
[编辑] 实际上,我的列表是 [[a,abc,2],[a,def,1],[a,ghi,3],[b,jkl,5],[b,lmn,7],[b,opq ,6],[c,rst,20],[c,vwx,23],[c,yzz,30]]。
我期望创建一个存储变量 [[a,ghi,3],[b,lmn,7],[c,yzz,30]] 的列表。如何使用第二个元素以及字母和最大值创建列表?
【问题讨论】:
标签: python pandas numpy dataframe