Ein Array nach zwei Werten sortieren
Verfasst: Dienstag 4. Dezember 2018, 12:53
Hallo liebe Community,
ich habe ein Example array das ich gerne nach zwei Werten spaltenweis sortieren möchte:
Und zwar möchte ich mein array zuerst nach der ersten zahl sortieren und anschließend nach der Zeit ohne die erste Sortierung zu verlieren. Meine Idee wäre die Matrix nach der ersten zu sortieren, dann zu splitten, chronologisch sortieren und wieder zusammenzufügen.
Oder ich mache eine while-Schleife und sage: solange sich der erste wert nicht ändert sortiere nach zeit, sobald er sich ändert, starte von neuem.
Eure Meinung welche Idee findet ihr besser oder gibt es einen viel einfacheren weg??
ich habe ein Example array das ich gerne nach zwei Werten spaltenweis sortieren möchte:
Code: Alles auswählen
values = [['2782', '2018-08-31 23:59:58', '12.68', '11.38'],
['2782', '2018-06-31 12:16:23', '10.25', '7.80'],
['2782', '2018-08-31 11:51:42', '9.13', '7.47'],
['1747', '2018-07-23 19:07:02', '11.97', '10.87'],
['1747', '2018-07-23 18:04:21', '10.53', '9.57'],
['1747', '2018-07-23 17:39:45', '11.90', '10.60']]
import numpy as np
matrix = np.array(values)
print(matrix)
print()
newmatrix = matrix[np.argsort(matrix[:,0])]
print(newmatrix)
Oder ich mache eine while-Schleife und sage: solange sich der erste wert nicht ändert sortiere nach zeit, sobald er sich ändert, starte von neuem.
Eure Meinung welche Idee findet ihr besser oder gibt es einen viel einfacheren weg??