私はPythonを初めて使用し、解決できない問題が発生しています。
私は次の2D配列を持っています:
valuearray = [['A', '21', '45'], ['A', '12', '23'],
['A', '54', '21'], ['A', '15', '54'],
['B', '23', '53'], ['B', '34', '53'],
['B', '32', '54'], ['B', '24', '13'],
['C', '31', '43'], ['C', '42', '54'],
['C', '35', '54'], ['C', '12', '11']]
A 21 45
A 12 23
A 54 21
A 15 54
B 23 53
B 34 53
B 32 54
B 24 13
C 31 43
C 42 54
C 35 54
C 12 11
この配列から、一意の値を持つ別の配列を生成する必要があります。それぞれvaluearray[0]
の最大値はvaluearray[1
] valuearray[0]
、最小値valuearray[2]
はそれぞれです。valuearray[0]
結果は次のようになります。
resarray[]
A 54 21
B 34 13
C 42 11
編集:私が試したものを提示しなかったことをお詫びします
uniquenames = []
un = []
for i in range(len(valuearray)):
un.append(valuearray[i][0])
uniquenames=uniq(un)
test = []
for ci in range(len(valuearray)):
for gn in range(len(uniquenames)):
if(valuearray[ci][0] == uniquenames[gn]):
# i don't know what to do here
i tried append(valuearray[ci][0] , max(valuearray[ci][1]),min( valuearray[ci][2]))
しかし、追加は1つのパラメーターしか取らないので、続行する方法がわかりません。
そして、uniqは、リストから一意の値を取得する関数です。