10 Punkte von xguru 2025-04-09 | 1 Kommentare | Auf WhatsApp teilen
  • Ein Rust-basiertes Tool zur schnellen und effizienten Verarbeitung großer CSV-Dateien im Terminal
  • Unterstützt neben verschiedenen Funktionen zur Datenmanipulation auch Anzeige, Visualisierung, Analyse, Web-Scraping, Textverarbeitung und Netzwerkanalyse
  • Nutzt intern Multithreading, eine Ausdruckssprache und Parallelverarbeitung für hohe Performance
  • Verarbeitet auch extrem große CSV-Dateien im Gigabyte-Bereich problemlos
  • Bietet eine spezialisierte Ausdruckssprache, die deutlich schneller als Python oder Lua ist
  • Mit Verkettung einzelner Befehle lassen sich komplexe Datenflüsse umsetzen
  • Ermöglicht grundlegende Visualisierungen von einfachen Statistiken bis zu Heatmaps und Histogrammen
  • Enthält erweiterte Funktionen für Sozialwissenschaftler und die Analyse von Webdaten
  • Unterstützt Linux, macOS und Windows
  • Erkennt verschiedene Formate wie .tsv, .psv, .ssv, .gz usw. automatisch

Beispiele für zentrale Befehle

  • Erkundung

    • xan headers: Gibt die Spaltenliste aus
    • xan view: Anzeige als Tabelle im Terminal
    • xan flatten: Alle Werte einer Zeile ausgeklappt anzeigen
    • xan hist, xan plot, xan heatmap: Visualisierungsfunktionen
  • Filtern & Suchen

    • xan search -s 키워드 파일.csv: Zeilen mit einem bestimmten Schlüsselwort finden
    • xan filter '조건식' 파일.csv: Zeilen per Ausdruck filtern
  • Transformation

    • xan select: Spalten auswählen
    • xan map: Neue Spalte per Ausdruck erzeugen
    • xan transform: Vorhandene Spalte per Ausdruck verändern
  • Aggregation und Analyse

    • xan count: Anzahl der Zeilen zählen
    • xan frequency: Häufigkeitstabelle erzeugen
    • xan stats: Deskriptive Statistik ausgeben
    • xan agg: Benutzerdefinierte Aggregation
    • xan groupby: Aggregation nach Gruppen durchführen
  • Sortieren & Duplikate entfernen

    • xan sort -s 컬럼: Sortieren
    • xan dedup -s 컬럼: Duplikate entfernen
  • Kombination

    • xan join: Join anhand eines Schlüssels
    • xan merge: Sortierte Dateien zusammenführen
    • xan cat: Nach Zeilen oder Spalten verketten
  • Ausdruckssprache

    • xan map 'fmt("{} ({})", name, foundation_year)' key
    • xan filter 'batch > 1'
    • xan transform name 'split(name, ".") | first | upper'
    • Die Ausdruckssprache ist eine leichtgewichtige DSL, die auf CSV-Manipulation spezialisiert ist; in der offiziellen Dokumentation finden sich ein Cheatsheet, eine Funktionsliste und eine Liste der Aggregatfunktionen
  • Visualisierungsfunktionen

    • xan hist: Textbasiertes Histogramm
    • xan plot: Scatterplot/Liniendiagramm
    • xan heatmap: Korrelations-Heatmap
    • xan view -p: Gesamte Tabelle im Terminal anzeigen

Erweiterte Funktionen

  • Vollständige Unterstützung für Standard-Ein-/Ausgabe-Pipelines
  • Automatische Verarbeitung von gzip-komprimierten Dateien
  • Eingebaute Scraping-DSL (HTML → CSV-Konvertierung)
  • Unterstützung für Lexikometrie und Fuzzy Matching: tokenize, vocab, cluster
  • Netzwerk-/Matrix-Transformationen: network, matrix

1 Kommentare

 
halfenif 2025-04-09

Ich habe mich gefragt, wie man das anwenden könnte, aber selbst wenn man nur sort oder drop verwendet, ist es sinnvoll.