Aller au contenu
A simplified 8-bit style illustration shows a CSV file icon with a checkmark, a grid pattern representing spreadsheet rows and columns, and a small gear to indicate data parsing tools. The design uses only five solid colors, has no human figures, text, shadows, gradients, or background, and appears completely flat and two-dimensional.

CSV

AI generated translation.

Analyse et génération (stringify) de données au format CSV (Comma Separated Values).

Les analyseurs (parsers) convertissent les données CSV en un tableau d’objets, dont les noms de champs correspondent à l’entête. Par exemple, les données CSV suivantes :

name, value
A, 10
B, 2
C, 3

sont converties en le tableau d’objets suivant :

[
{
"name": "A",
"value": 10
},
{
"name": "B",
"value": 2
},
{
"name": "C",
"value": 3
}
]

La fonction def analyse et génère automatiquement les données CSV en une table Markdown (fonctionne aussi pour XLSX).

def("DATA", env.files[0])

def prend également en charge des options de filtrage basiques pour contrôler le nombre de lignes à insérer dans l’invite.

def("DATA", env.files[0], {
sliceHead: 50, // take first 50
sliceTail: 25, // take last 25
sliceSample: 5, // take 5 at random
})

De la même manière que la classe JSON en JavaScript, la classe CSV fournit des méthodes pour analyser et générer des données au format CSV (Comma-Separated Values).

La méthode parse convertit une chaîne CSV en un tableau d’objets. La première ligne est utilisée comme ligne d’entête.

const csv = await workspace.readText("penguins.csv")
const rows = CSV.parse(csv)

Si le fichier CSV ne possède pas de ligne d’entête, vous pouvez spécifier les noms des colonnes sous forme de tableau de chaînes de caractères. Vous pouvez aussi définir un séparateur de données personnalisé.

const rows = CSV.parse(csv, {
delimiter: "|",
headers: ["name", "value"],
})

Vous pouvez utiliser defData pour sérialiser l’objet rows dans l’invite. defData prend en charge les mêmes options de filtrage basiques que def.

defData("DATA", rows)

La méthode stringify convertit un tableau d’objets en chaîne CSV.

const csvString = CSV.stringify(rows)

La méthode markdownify convertit un tableau d’objets en table Markdown. Ce format est plus efficace pour les tokenizers des LLM.

const md = CSV.markdownify(rows)
| name | value |
|------|-------|
| A | 10 |
| B | 2 |
| C | 3 |

Les parsers proposent également un analyseur dédié au CSV. Il renvoie undefined pour les entrées invalides et prend en charge les fichiers ainsi que les options de parsing.

const rows = parsers.CSV(env.files[0])

Vous pouvez spécifier l’option repair: true pour corriger les erreurs courantes des LLM lors du traitement du CSV.

const rows = CSV.parse(csv, { repair: true })