Seite 1 von 1

Mehrdimensionales Array Problem

Verfasst: Mittwoch 16. November 2022, 00:06
von NikNakPaddywagg
Hallo Community,

ich hab einen Pandas Datenframe (2D Array den ich gerne in bestimmten Zellen um eine Dimension erweitern würde. Hier mal wie der Datenframe aktuell aussieht:

Artikelnummer Name Menge Plastik Verpackung Datum Preis
1 001 Apfel 1 Ja 24.10.2022 1,99
2 020 Banane 5 Nein 23.10.2022 2,49
3 045 Erdbeere 10 JA 24.10.2022 4,99
4 056 Birne 1 Nein 24.10.2022 0,89

Soweit so gut. Neu Artikel kann ich mit concat oder append an den Datenframe anhängen.
Allerdings würde ich gerne eine Preisänderung des Artikels mitaufnehmen, damit man Preisänderungen nachverfolgen kann. Das ganze sollt dann am liebsten so aussehen:

Artikelnummer Name Menge Plastik Verpackung Datum Preis
1 001 Apfel 1 Ja 24.10.2022 1,99
26.10.2022 2,10
2 020 Banane 5 Nein 23.10.2022 2,49
3 045 Erdbeere 10 JA 24.10.2022 4,99
26.10.2022 5,49
4 056 Birne 1 Nein 24.10.2022 0,89

Der Artikel und seine Eigenschaften bleiben gleich nur die Preisänderung wird eingetragen. Soweit ich das verstanden habe ist dies mit Pandas nicht mehr möglich.
Hat jemand ne Idee wie man so etwas geschickt umsetzen kann.
Ziel ist es auf alle fälle das Ganze noch als Excel ausgeben zu lassen. Dabei sollte auch bei einer Sortierung nach Namen oder ähnlichem die Artikel und deren Verlauf nicht auseinander gerissen werden.

Danke schon mal für Idee.

Re: Mehrdimensionales Array Problem

Verfasst: Mittwoch 16. November 2022, 12:55
von NikNakPaddywagg
Das mit der Formatierung hat im Beitrag leider nicht geklappt hier nochmal mit Bilder:
Aktuell:
Bild

Wunsch:
Bild

Danke

Re: Mehrdimensionales Array Problem

Verfasst: Mittwoch 16. November 2022, 13:32
von kbr
Ein Dataframe ist eine 2-dimensionale Datenstruktur. Nun ist einer der Werte in dieser Datenstruktur (der Preis mit zeitlichen Änderungen) ein 1D-Vektor, also hast Du eigentlich drei Dimensionen. In OO, oder auch in einer Datenbank, ist so etwas sehr einfach abzubilden, in einer 2D-Matrix aber nicht mehr. Es stellt sich daher die Frage, wie Du Deine Datenstruktur in 2D projezieren möchtest. Wenn diese Frage beantwortet ist, würde ich die Daten dann aber nicht in Pandas oder Excel speichern, sondern in einer dafür geeigneten Datenstruktur und die gewünschte Projektion bei Bedarf nach Pandas oder Excel exportieren.

Eine einfache 2D-Lösung wäre, den Preis in der letzten Spalte zu haben – wie jetzt auch – und bei Preisänderungen einfach weitere Spalten hinzufügen.

Re: Mehrdimensionales Array Problem

Verfasst: Mittwoch 16. November 2022, 14:41
von NikNakPaddywagg
Danke für die Antwort.
Okay ich denke ich verstehe wie du das meinst. Könnte ich in einer 2-dimensionale Datenstruktur einen 1-D Vektor eintragen? Oder ist das schon ein Widerspruch und nicht möglich? Der Datentyp der Spalte wär dann einfach ein Tuple?

Die einfache Lösung hört sich erstmal sehr gut an. Hast du dennoch vielleicht einen Empfehlung für 3D Datenstrukturen?

Danke

Re: Mehrdimensionales Array Problem

Verfasst: Mittwoch 16. November 2022, 14:59
von __deets__
Du kannst schon einen Vektor als Zelle innerhalb einer 2-dimensionalen Struktur anlegen - es ist aber ziemlicher Murks. Eine Verarbeitung mit pandas oder Excel ist in dem Moment schwer bis unmoeglich. Weil das am Ende ein opaquer Text ist. Auch wenn er strukturiert aussieht.

3D-Strukturen sind Datenbanken, oder sowas wie JSON.

Re: Mehrdimensionales Array Problem

Verfasst: Mittwoch 16. November 2022, 22:39
von NikNakPaddywagg
Okay danke für die Hilfe. Ich werde mich mal mit JSON beschäftigen.