Ja, das hatte ich ganz zu Beginn probiert, das klappte aber nicht - später stellte sich dann raus, dass die xls-tabelle offenbar einige nicht ganz sauber befüllte Felder hatte, mit denen sich manche Funktionen zwar so la la ausführen ließen, andere aber nicht.
Beiträge von gurgel
-
-
Ein herzliches Hallo in die Runde,
nach dem Verwandeln ins csv-Format habe es jetzt mit folgendem "Trick" geschafft:
11
csvsort -c 2 -l -L="DE_de" ganzneu.csv | csvformat -T | head -n 11
Der L="DE_de" Befehl hat offenbar bewirkt, dass die Zahlen "richtig" gereiht werden;-)
Vielen, vielen Dank nochmal Euch allen und weiterhin Frohes Schaffen!
-
Vielen Dank, ich finde es wirklich total toll, muss ich an dieser Stelle mal sagen, dass Ihr mich bei meinem Problem so unterstützt!!!
Ich bin erst jetzt wieder am Rechner und werde mal weiter probieren - vielleicht klappt es ja schon mit diesen Hinweisen!
Tausend Dank schon einmal!
-
Meine Sortierung sieht ständig aus wie folgt - egal ob ich mit -g oder -h oder -n sortiere:
Die Zahlenreihe beginnt mit 100,1436
und steigt dann auf bis 237,4123
dann geht es plötzlich weiter bei 23,9435
und steigt dann auf bis 99,9502.
Mir ist schon klar, dass der Computer irgendwie anders zählt als wir Menschen;-) Aber es wäre wirklich toll zu verstehen, womit ich ihn füttern muss, damit er so zählt wie wir!
-
Ok...
"Code</ sort -g -K 2 ganzneu.csv>"
und
"Code</ sort -h -c 2 ganzneu.csv>"
hilft auch nicht...
Wie kann ich denn bloß eine Spalte auf- oder absteigend nach ihren Zahlenwerten sortieren?
Ist das wirklich so kompliziert?
Ich verstehe es einfach nicht. Warum wird bei meinem Befehl die erste Spalte mit dem Datum sortiert, und nicht die zweite mit den Zahlen?
-
Aber egal, was ich tue - die Daten werden immer nach der ersten Spalte sortiert, nicht nach der zweiten!
Ich habe u.a. versucht
sort -n -K 2 ganzneu.csv
und
sort -n -K 2,2 ganzneu.csv
etc.
Nichts hilft... es kommt eine elendig lange Wurst von
",
",
",
dann eine ewige Wurst der Spalteninhalte (Spalten 1 + 2)
2018-10-21, "21
2018-10-22, "21
etc.
dann eine ewige Wurst
Confirmed,
Confirmed,
etc.
dann eine ewige Wurst
E-Value,
E-Value,
etc.
Ich habe keine Ahnung, was ich noch versuchen soll!
-
Das Löschen der ersten Zeile habe ich jetzt geschafft.
-
Für mich anscheinend schon... Ich habe es jetzt nach Deiner Anweisung gemacht, aber da werden die Zahlen in Spalte 2 alle gerundet.
Egal, das soll jetzt nicht so wichtig sein...
Aber das Sortieren funktioniert jetzt immer noch nicht, weil die erste Zeile noch drin ist, welche die Namen der Spalten enthält.
Ich müsste also die erste Zeile für das Sortieren ausschließen - das habe ich versucht mit
csvsort -c 2 -K 1 neu.csv
Aber da kommt eine Fehlermeldung.
-
Ah, danke, jetzt konnte ich es installieren!
Aber wie kann ich denn jetzt z.B. die ersten beiden Spalten ausschneiden und als neue Datei speichern?
-
Bei mir scheint awk nicht drauf zu sein... jedenfalls kann ich es mit sudo apt-get install nicht installieren...
-
Toll, vielen Dank für Euren zahlreichen Input und Eure Hilfe!
Sojan , das Konvertieren nach csv hat schon mal geklappt.
Dann kann ich mich jetzt daran versuchen, einzelne Spalten auszuwählen und die Daten zu sortieren - wenn ich Euch richtig verstehe, müsste das jetzt leichter gehen als mit xls-Dateien...
-
Hallo $ppid,
danke für Deine Antwort!
Nein, es handelt sich nicht um eine Prüfungsaufgabe für den LPIC, da bin ich gar nicht involviert.
Es geht um das private Lernen mit anderen in kleinem Kreis, einfach aus Interesse.
Allerdings haben wir uns jetzt selbst eine Aufgabe gestellt, die wir offenbar nicht lösen können, aber gerne würden, um daraus mehr Verständnis für die Funktionen abzuleiten.
-
Hallo in die Runde,
ich verwende seit Kurzem Linux Mint Cinnamon und würde gerne in der Shell bestimmte Daten aus einer xls.Datei ausgeben lassen.
Aus der Vielzahl an Spalten will ich jeweils nur die Informationen aus den ersten beiden Spalten betrachten. (Die erste Spalte enthält Datumsangaben im Format xxxx-xx-xx, die zweite Spalte enthält Zahlen.)
Folgende beiden "Aufgaben" möchte ich gerne lösen:
1) Die Daten aufsteigend nach den Zahlen in der zweiten Spalte sortieren, dabei jeweils die Werte der beiden Spalten nebeneinander ausgeben lassen (nach Möglichkeit mit neuer Zeilennummerierung von 1 aufwärts, beziehungsweise nur die ersten 10 Zeilen).
2) Nun möchte ich nur die Zeilen ausgeben lassen, für die ein bestimmter Stichtag zutrifft (also z.B. jeweils der 1. Februar aus allen Jahren).
Kann mir jemand dabei helfen? Ich habe auf den Man pages zwar zu so Begriffen wie grep, cat, head, sed, sort nachgelesen, aber kann das irgendwie noch nicht sinnvoll in eine Reihenfolge bringen.
Ich würde mich sehr über hilfreiche Hinweise freuen! Vielen Dank im Voraus!