Erstellung von Cells / Listen in Listen mit unterschiedlicher Länge

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
naheliegend
User
Beiträge: 439
Registriert: Mittwoch 8. August 2018, 16:42

Hi,

in Matlab sind das Cells, die möchte ich auch in Python haben:

Sprich:

Code: Alles auswählen

Projekt = [Tag1, Tag2, Tag3]

Tag1 = [10x2] Matrix
Tag2 = [5x7] Matrix
Tag3 = [1111x111] Matrix
Ich glaube das geht mit numpy, weiß aber nicht genau, wie ich das mit den Dimensionen mache und mit den Matrizen.

Gruß
__backjack__: "Jemand der VB oder PHP kann, der also was Programmieren angeht irgendwo im negativen Bereich liegt (...)"
__deets__
User
Beiträge: 14522
Registriert: Mittwoch 14. Oktober 2015, 14:29

Hast du mal 3 Minuten in die Dokumentation von numpy geschaut?

https://docs.scipy.org/doc/numpy/user/quickstart.html

Und das dein Code da oben in matlab geht finde ich spannend. Sich auf Variablen beziehen zu koennen, die erst spaeter erstellt werden, ist eher ungewoehnlich fuer eine Programmiersprache. Python kann das jedenfalls nicht (und auch keine andere, die ich kenne. Matlab gehoert da aber nicht zu).
Benutzeravatar
__blackjack__
User
Beiträge: 13069
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Also entweder nimmt man für `Projekt` einfach eine Liste, oder ein `numpy`-Array mit dem Elementtyp `object`. Letzteres bekommt man bei den entsprechenden `scipy.io`-Funktionen wenn man *.mat-Dateien mit „cell arrays“ lädt: https://docs.scipy.org/doc/scipy/refere ... ell-arrays
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
naheliegend
User
Beiträge: 439
Registriert: Mittwoch 8. August 2018, 16:42

__deets__ hat geschrieben: Mittwoch 29. August 2018, 14:33 Hast du mal 3 Minuten in die Dokumentation von numpy geschaut?

https://docs.scipy.org/doc/numpy/user/quickstart.html

Und das dein Code da oben in matlab geht finde ich spannend. Sich auf Variablen beziehen zu koennen, die erst spaeter erstellt werden, ist eher ungewoehnlich fuer eine Programmiersprache. Python kann das jedenfalls nicht (und auch keine andere, die ich kenne. Matlab gehoert da aber nicht zu).
Habe dort geschaut. Da steht aber nicht von der zweiten Ebene.
:mrgreen: Nein, natürlich geht das nicht. Entschuldige dafür.

Im Grund geht es mir um Datenstrukturen. Da bin ich sehr unwissend.
__backjack__: "Jemand der VB oder PHP kann, der also was Programmieren angeht irgendwo im negativen Bereich liegt (...)"
__deets__
User
Beiträge: 14522
Registriert: Mittwoch 14. Oktober 2015, 14:29

Was denn fuer eine zweite Ebene? Du meinst "Projekt"? Das ist doch nur eine Liste mit den drei Matrizen drin. Oder du machst eine 3x1111x1111 Matrix, und ignorierst, dass Tag1 und Tag2 so viele Daten nicht brauchen.

Wenn du Datenstrukturen nicht kennst, solltest du mal ein paar Stunden in das Python-Tutorial investieren. Da werden die grundlegenden - Listen, Woerterbuecher, Tupel - dargestellt.
naheliegend
User
Beiträge: 439
Registriert: Mittwoch 8. August 2018, 16:42

Ich habe mich jetzt ein bisschen konkreter mit dem Problem beschäftigt. Listen scheinen ja schon die cell-Eigenschaften von Matlab automatisch zu besitzen.

Damit wäre mein Problem gelöst, da eine Liste automatisch als Einträge weitere Listen unterschiedlicher große carryn kann.
__backjack__: "Jemand der VB oder PHP kann, der also was Programmieren angeht irgendwo im negativen Bereich liegt (...)"
Antworten