Suite

Pourquoi ne puis-je pas choisir le champ de jointure dont j'ai besoin à partir d'un fichier csv ou Excel ?


J'essaie de joindre des données de recensement (au niveau du comté) à une carte de base de comté, en utilisant le code de comté FIPS comme champ de jointure.

Je peux m'inscrire avec succès si je ne modifie pas le fichier csv d'origine à partir du téléchargement du recensement. Cependant, ArcMap transformera tous les champs de données en types de chaîne de cette façon et je veux un type numérique. Selon le fichier d'aide d'ArcMap, je devrais supprimer toutes les entrées de texte des huit premières lignes du tableau et en faire des chiffres (j'ai utilisé zéro). Après avoir effectué cette modification, ArcMap ne me permet plus de sélectionner la colonne FIPS comme colonne de jointure. Frustrant! Aucune suggestion?


Vous ne pouvez pas choisir le champ de jointure car ils sont de types de champs différents.

Créez également un nouveau champ du même type que celui que vous essayez de joindre, puis calculez vos valeurs dans votre nouveau champ. La jointure devrait fonctionner.


S'appuyant sur la réponse précédente, voici une explication complète qui peut servir à ceux qui se posent cette question.

ArcGIS a quelques types de champs (ou façons dont il stocke les informations dans une colonne de données) : entier court, entier long, flottant, double, texte/chaîne, date. Ces types sont affectés à un champ (colonne) et peuvent ne pas refléter le contenu d'un champ (c'est-à-dire que vous pouvez avoir des nombres dans votre champ mais il est stocké sous forme de texte ou vous pouvez avoir des nombres entiers stockés sous forme de flottant). Lorsque vous joignez des colonnes d'Excel enregistrées en tant que type de champ .txt (et peut-être d'autres que je n'ai pas encore vérifiées), ArcGIS décide de quel type de champ il s'agit en fonction du contenu de la colonne (s'il y a des nombres, il décidera qu'il est interger).

L'explication technique ci-dessus signifie que vous pouvez avoir une colonne pleine de nombres dans votre champ ArcGIS (mais qui est stocké en tant que type de texte) et des nombres dans votre table (que vous souhaitez joindre) mais ArcGIS ne les reconnaîtra pas comme les mêmes type et ne vous permettra pas de faire une jointure basée sur eux. Pour effectuer la jointure, vous devez trouver un moyen de modifier le type de colonne afin qu'elles soient toutes les deux reconnues comme identiques (en modifiant le type de table d'entrée plus malléable).

Si vous avez un champ enregistré en tant que texte/chaîne dans ArcGIS (avec des nombres) que vous souhaitez joindre à une colonne de nombres dans une table, vous pouvez définir le type de la colonne dans votre fichier texte/csv en apportant quelques ajustements . Dans Excel (ou un autre tableur), créez au moins huit lignes de « fausses données » avec du texte (par exemple, a, b, c, d, etc.) dans le tableau que vous souhaitez joindre. Enregistrez ce nouveau .csv/.text et utilisez-le pour votre jointure. Ensuite, ArcGIS reconnaîtra votre colonne en tant que "texte"/"chaîne" et pourra se joindre.


Importez des données à partir d'Excel ou exportez des données vers Excel avec SQL Server Integration Services (SSIS)

Cet article décrit les informations de connexion que vous devez fournir et les paramètres que vous devez configurer pour importer des données à partir d'Excel ou exporter des données vers Excel avec SQL Server Integration Services (SSIS).

Les sections suivantes contiennent les informations dont vous avez besoin pour utiliser Excel avec succès avec SSIS et pour comprendre et résoudre les problèmes courants :

Les informations de connexion que vous devez fournir et les paramètres que vous devez configurer lorsque vous chargez des données depuis ou vers Excel avec SSIS.

    comme source de données.
  • Indiquez le nom et le chemin du fichier Excel.
  • Sélectionnez la version Excel.
  • Indiquez si la première ligne contient des noms de colonnes.
  • Fournissez la feuille de calcul ou la plage qui contient les données.

Problèmes et limites connus.


Importation de données d'analyse &

Si vous copiez un bloc de données à partir d'une page Web, d'un fichier de traitement de texte ou d'un autre fichier texte, collez-le dans Excel à l'aide de la Pâte > Spécial > Texte commande, toutes les données sont déversées dans une colonne de cellules individuelles. Cela signifie que les enregistrements sont copiés dans des lignes séparées, mais que tous les champs sont dans une seule cellule. Quel bordel! Maintenant quoi?

Noter: il semble que les données débordent dans les colonnes adjacentes, mais seule la première colonne contient les informations collées.

2. Sélectionnez Données > Texte aux colonnes. Dans le Assistant de conversion de texte en colonnes fenêtre de dialogue, choisissez le Délimité bouton, puis cliquez sur Prochain.

3. Dans la fenêtre de dialogue suivante (étape 2 sur 3, ci-dessous), sélectionnez le délimiteur, c'est-à-dire le caractère qui sépare les champs. Dans les fichiers CSV, c'est une virgule. Certaines bases de données utilisent un onglet, d'autres un point-virgule. Le seul caractère qui sépare les données dans cette base de données est un espace, alors cochez la case Espace.

4. Cochez la case qui dit : Traiter les délimiteurs consécutifs comme un seul, au cas où plusieurs espaces se produiraient dans une chaîne de texte. Ce paramètre s'applique également si vos données ont un délimiteur de plusieurs caractères entre les champs de données, ou si les données contiennent plusieurs délimiteurs personnalisés.

5. De la Qualificatif de texte liste déroulante, sélectionnez Rien, car les enregistrements ne sont pas entourés de guillemets simples ou doubles.

7. Dans la fenêtre de dialogue suivante (étape 3 sur 3, ci-dessous), Excel vous offre la possibilité de modifier le format de chaque colonne. La première colonne est sélectionnée par défaut. Notez que l'en-tête indique "Général". Général fonctionne pour tous les champs numériques. Comme il s'agit d'un champ de texte, cliquez sur le Texte bouton pour changer ce format.

8. Cliquez n'importe où dans la deuxième colonne et la surbrillance se déplace vers cette colonne. Si le format sélectionné de Général est incorrect, cliquez sur le format correct pour cette colonne parmi les options ci-dessus. Dans ce cas, le format Text est correct.

9. Répétez ce processus pour tous les champs importés. Cliquez ensuite sur le Finir bouton.

10. Maintenant, le patron veut que les mois soient séparés. Tout d'abord, insérez une colonne à côté de la colonne Mois modernes afin que les données analysées n'écrasent pas les informations de la colonne G.

11. Déplacez votre curseur sur la colonne G. Sélectionnez Insérer > Insérer une colonne de feuille.

12. Mettez en surbrillance le deuxième champ « Mois modernes » dans la colonne F et suivez les instructions ci-dessus pour séparer ce champ en deux champs. Notez que le délimiteur personnalisé est la barre oblique.

13. Changez les colonnes de Général à Texte et cliquez sur Finir. Maintenant, les mois sont sur deux colonnes au lieu d'une.


6 réponses 6

2) Accédez au ruban, sélectionnez DONNÉES et sélectionnez À partir d'autres sources, puis cliquez sur À partir du flux de données OData.

3) Dans le formulaire « Assistant de connexion de données », fournissez le lien REST approprié et cliquez sur Suivant.

Format REST Link pour obtenir les utilisateurs de Sp Group :

https:// Votre site SP2013 /_api/Web/SiteGroups/GetById(9)/Users

4) Dans le formulaire Suivant, sélectionnez le tableau « Utilisateurs » et cliquez sur Suivant.

5) Dans le formulaire suivant, fournissez un nom de fichier de connexion de données approprié et un nom convivial (Remarque : il ne s'agit pas d'un nom de fichier Excel), cochez « Toujours essayer d'utiliser ce fichier pour actualiser les données » et cliquez sur Terminer

6) Dans la dernière forme, assurez-vous que « Table » est sélectionné. Sélectionnez la feuille de calcul (par défaut sa feuille de calcul existante qui est ouverte) et cliquez sur OK.

7) Les utilisateurs de ce groupe seront exportés vers la feuille Excel.

Vous avez mentionné, vous avez pu exporter les groupes dans Excel quelle méthode vous utilisez pour cela ?

Accédez à l'onglet Personnes et groupes sous Paramètres du site [Paramètres du site > Personnes et groupes]

Copiez l'URL de la page Personnes et groupes.

Ouvrez votre classeur Excel et cliquez sur l'onglet Données.

Cliquez sur "À partir du Web" et collez l'URL de la page Personnes et groupes dans la barre d'adresse.

Une fois la page chargée, vous verrez une flèche pointant vers la liste des membres du groupe. En survolant cette flèche, la liste des membres du groupe sera mise en surbrillance. Cliquez sur cette flèche, puis sur Importer, puis sur OK.

Il existe une autre méthode pour utiliser owssrv.dll, veuillez consulter ce blog pour cela.

J'ai pu extraire l'appartenance à un groupe d'autorisations SharePoint 2013 qui comptait 2035 membres en procédant comme suit. Notez que je voulais uniquement le nom du compte. Vous devrez peut-être modifier légèrement ce processus si vous souhaitez un champ différent ou plusieurs champs :

  1. Parcourez le groupe pour savoir combien de membres il compte
  2. Allez dans Paramètres/Paramètres du site/Personnes et groupes/ et choisissez n'importe quel groupe.
  3. Choisissez Paramètres/Paramètres de liste dans la barre d'outils pour l'appartenance au groupe
  4. Créez une nouvelle vue avec la colonne que vous souhaitez exporter (je ne voulais que la colonne du compte) et définissez la limite d'éléments à un peu plus que le nombre de membres du groupe que vous souhaitez exporter (j'ai défini le mien pour afficher les enregistrements par lots de 2100, puis j'ai appelé ma vue "2100 Articles")
  5. Retournez dans Paramètres/Paramètres du site/Personnes et groupes/ et choisissez le groupe que vous souhaitez exporter.
  6. À l'extrémité droite de la barre d'outils pour l'appartenance au groupe, modifiez le sélecteur de vue pour sélectionner votre vue personnalisée.
  7. Utilisez Ctrl/A pour sélectionner la page entière, puis Ctrl/C pour la copier.
  8. Ouvrez un fichier texte vide à l'aide du Bloc-notes et collez-y le contenu de la page.
  9. L'opération de copie vous laissera au bas du fichier texte. Supprimez tout le texte sous le dernier compte.
  10. Allez en haut du fichier texte et supprimez tout le texte au-dessus du premier compte.

Vous avez maintenant une liste assez claire de tous les membres du groupe. Notez qu'il contient un espace de fin à la fin de chaque ligne. Selon la façon dont vous souhaitez utiliser les données, vous devrez peut-être effectuer un nettoyage supplémentaire dans Word ou Excel. (Conseils de nettoyage : vous pouvez coller votre liste de comptes dans Excel, puis utiliser Text to Columns pour nettoyer l'espace de fin. Ou, vous pouvez utiliser Word et remplacer toutes les occurrences de [espace][marque de paragraphe] par simplement [marque de paragraphe] si vous avez exporté plusieurs colonnes.)


Utilisez la commande suivante :

Vous pouvez rediriger la sortie de votre commande vers un fichier .csv :

Assurez-vous que votre fichier de script utilise Write-Output et non Write-Host lors de l'impression de votre sortie.

Vous pouvez exporter n'importe quelle sortie du powershell vers un fichier CSV. Il s'agit d'une fonction intégrée.

Si cela fonctionne, vous pouvez ensuite utiliser la commande export-excel.

Vous voulez utiliser le paramètre Export-Csv. J'ai aussi trouvé cet exemple facile.

En utilisant Export-CSV comme d'habitude, nous pouvons exporter les éléments de la liste SharePoint dans un fichier csv, et en utilisant le code ci-dessous, nous pouvons convertir le fichier csv particulier en fichier Excel :

  • Il n'y a pas de fonction intégrée directe pour exporter dans Excel à l'aide de PowerShell comme Export-CSV, nous devons donc d'abord exporter vers un fichier csv, puis nous devons convertir ce fichier en Excel.

Comment effectuer un publipostage d'Excel vers Word vers envoyer des lettres en vrac (guide de passage)

Vous pouvez utiliser la fonction de fusion et publipostage dans Word et Excel pour créer et imprimer rapidement des lettres de masse personnalisées.

  • les fichier de données est un feuille de calcul Excel contenant les coordonnées de vos destinataires.


Remarque : une fois que vous avez de l'expérience dans la configuration des publipostages, vous pouvez essayer l'assistant de publipostage de Word’s, qui vous guide tout au long de la configuration sans explications. Dans le menu ruban, choisissez Mailings → Démarrer le publipostage → Assistant de publipostage étape par étape. Sur le côté droit de votre fenêtre, vous verrez le Volet Office Fusion et publipostage — suivez les instructions là-bas. Pour plus de détails, continuez à lire ce qui suit.


Je suppose que vous souhaitez conserver les nouvelles lignes dans les chaînes pour une raison quelconque après avoir chargé les fichiers csv à partir du disque. Aussi que cela se fait à nouveau en Python. Ma solution nécessitera Python 3, bien que le principe puisse être appliqué à Python 2.

Il s'agit de remplacer les caractères avant d'écrire par un caractère étrange qui autrement ne serait pas inclus, puis de remplacer ce caractère étrange par après avoir lu le fichier à partir du disque.

Pour mon personnage bizarre, j'utiliserai le épine islandaise: Þ, mais vous pouvez choisir n'importe quoi qui ne devrait autrement pas apparaître dans vos variables de texte. Son nom, tel que défini dans la spécification Unicode normalisée est : LETTRE MINUSCULE LATINE ÉPINE. Vous pouvez l'utiliser dans Python 3 de plusieurs manières :

Ce N est plutôt cool (et fonctionne également en python 3.6 à l'intérieur de chaînes formatées). il vous permet essentiellement de passer le Nnom d'un caractère, conformément aux spécifications d'Unicode.


10 réponses 10

La plupart des personnes non techniques utilisent souvent Excel comme remplacement de base de données. Je pense que c'est faux mais tolérable. Cependant, quelqu'un qui est censé être expérimenté dans l'analyse de données ne peut tout simplement pas utiliser Excel comme outil principal (à l'exception de la tâche évidente de regarder les données pour la première fois). C'est parce qu'Excel n'a jamais été conçu pour ce genre d'analyse et en conséquence, il est incroyablement facile de faire des erreurs dans Excel (cela ne veut pas dire qu'il n'est pas incroyablement facile de faire un autre type d'erreurs en utilisant d'autres outils, mais Excel aggrave encore plus la situation.)

Pour résumer ce qu'Excel n'a pas et est un must pour toute analyse :

  1. Reproductibilité. Une analyse de données doit être reproductible.
  2. Contrôle de version. Bon pour la collaboration et aussi bon pour la reproductibilité. Au lieu d'utiliser xls, utilisez csv (toujours très complexe et a beaucoup de cas limites, mais les analyseurs csv sont assez bons de nos jours.)
  3. Essai. Si vous n'avez pas de tests, votre code est cassé. Si votre code est cassé, votre analyse est pire qu'inutile.
  4. Maintenabilité.
  5. Précision. La précision numérique, l'analyse précise de la date, entre autres, font vraiment défaut dans Excel.

Les data scientists expérimentés utilisent-ils Excel ?

J'ai vu des data scientists expérimentés qui utilisent Excel - soit en raison de leur préférence, soit en raison des spécificités de l'environnement commercial et informatique de leur lieu de travail (par exemple, de nombreuses institutions financières utilisent Excel comme outil principal, au moins, pour la modélisation). Cependant, je pense que la plupart des data scientists expérimentés reconnaissent la nécessité d'utiliser des outils optimaux pour des tâches particulières et adhèrent à cette approche.

Pouvez-vous supposer un manque d'expérience de la part de quelqu'un qui utilise principalement Excel ?

Non tu ne peux pas. C'est le corollaire de mes réflexions ci-dessus. La science des données n'implique pas automatiquement le Big Data - il existe de nombreux travaux de science des données qu'Excel peut très bien gérer. Cela dit, si un data scientist (même expérimenté) n'a pas de connaissances (au moins basiques) sur les outils modernes de data science, y compris ceux axés sur les mégadonnées, c'est quelque peu dérangeant. En effet, l'expérimentation est profondément ancrée dans la nature de la science des données, car l'analyse exploratoire des données en est une partie essentielle et même cruciale. Par conséquent, une personne, qui n'a pas envie d'explorer d'autres outils dans son domaine, pourrait se classer moins bien parmi les candidats dans l'adéquation globale pour un poste en science des données (bien sûr, c'est assez flou, car certaines personnes apprennent très rapidement nouveau matériel, de plus, les gens n'ont peut-être pas eu l'occasion de satisfaire leur intérêt pour d'autres outils pour diverses raisons personnelles ou professionnelles).

Par conséquent, en conclusion, je pense que la meilleure réponse qu'un data scientist expérimenté pourrait avoir à une question concernant son outil préféré est la suivante : Mon outil préféré est celui qui est optimal, c'est-à-dire celui qui correspond le mieux à la tâche à accomplir.

Je pense que la plupart des gens répondent sans avoir une bonne connaissance d'Excel. Excel (depuis 2010) dispose d'une base de données en colonne [multi table] en mémoire, appelée power pivot (qui permet la saisie à partir de csv/bases de données, etc.), lui permettant de stocker des millions de lignes (il n'a pas besoin d'être chargé sur une feuille de calcul) . Il dispose également d'un outil ETL appelé requête de puissance vous permettant de lire les données à partir de diverses sources (y compris hadoop). Et il dispose d'un outil de visualisation (vue de puissance et carte de puissance). Une grande partie de la science des données effectue des agrégations et des analyses top-n dans lesquelles Power pivot excelle. Ajoutez à cela la nature interactive de ces outils - tout utilisateur peut facilement faire glisser et déposer une dimension sur laquelle diviser les résultats et j'espère que vous pourrez en voir les avantages. Alors oui, vous ne pouvez pas faire de l'apprentissage automatique, mais je me demande combien d'apprentissage automatique est effectué par les scientifiques des données au jour le jour : par exemple, lorsque je veux analyser les erreurs de prédiction commises dans un programme d'apprentissage automatique, je trouve qu'il est plus facile de trancher et de découper les erreurs avec excel.

Dans son livre Data Smart, John Foreman résout les problèmes courants de la science des données (clustering, bayes naïfs, méthodes d'ensemble. ) à l'aide d'Excel. En effet, il est toujours bon d'avoir une certaine connaissance de Python ou R mais je suppose qu'Excel peut encore faire la plupart du travail !

Je suis surpris du nombre de personnes attachées au sang-froid du métier plutôt qu'au travail réel à faire. Excel est un excellent outil, avec Powerpivot gratuit, Powerquery, il peut faire tellement de choses. (ceux-ci ne sont pas disponibles sur OS X). Et si vous connaissez VBA, vous pouvez faire des trucs sympas. Et puis, si vous ajoutez à cette connaissance de python, vous pouvez combiner les toutes premières étapes d'extraction et de manipulation de données avec python, puis utiliser Excel, surtout si vous êtes une personne visuelle. Avec Excel, vous pouvez vraiment inspecter les données agrégées avant de les intégrer à d'autres processus ou de les visualiser. C'est un outil indispensable.

Permettez-moi d'abord de préciser que je commence mon voyage dans la science des données du point de vue du programmeur et du développeur de bases de données. Je ne suis pas un expert en science des données depuis 10 ans ni un dieu statistique. Cependant, je travaille comme scientifique des données et sur de grands ensembles de données pour une entreprise qui travaille avec des clients assez importants dans le monde entier.

Selon mon expérience, Les data scientists utilisent tous les outils dont ils ont besoin pour faire leur travail. Excel, R, SAS, Python et plus sont tous des outils dans une boîte à outils pour un bon data scientist. Les meilleurs peuvent utiliser une grande variété d'outils pour analyser et traiter les données.

Par conséquent, si vous vous retrouvez à comparer R à Python, vous vous trompez probablement dans le monde de la science des données. Un bon data scientist utilise les deux lorsqu'il est logique d'utiliser l'un plutôt que l'autre. Cela s'applique également à Excel.

Je pense qu'il est assez difficile de trouver quelqu'un qui aura de l'expérience dans autant d'outils et de langages différents tout en étant excellent dans tout. Je pense aussi qu'il sera difficile de trouver un data scientist spécifiquement capable non seulement de programmer des algorithmes complexes, mais aussi de savoir les utiliser d'un point de vue statistique.

La plupart des data scientists avec qui j'ai travaillé se présentent sous deux formes. Ceux qui savent programmer et ceux qui ne le peuvent pas. Je travaille rarement avec un data scientist qui peut extraire des données en Python, les manipuler avec quelque chose comme Pandas, adapter un modèle aux données dans R, puis le présenter à la direction à la fin de la semaine.

Je veux dire, je sais qu'ils existent. J'ai lu de nombreux blogs sur la science des données de gars qui développent des scrappers Web, les poussent dans Hadoop, les retirent en Python, programment des choses complexes et les exécutent via R pour démarrer. Ils existent. Ils sont là-bas. Je n'en ai pas rencontré trop qui peuvent faire tout cela. C'est peut-être juste ma région?

Alors, cela signifie-t-il seulement se spécialiser dans une chose mauvaise ? Non. Beaucoup de mes amis se spécialisent dans une seule langue principale et la tuent. Je connais beaucoup de gars de données qui ne connaissent que R et le tuent. Je connais aussi beaucoup de gens qui n'utilisent Excel que pour analyser des données, car c'est la seule chose que la plupart des non-scientifiques peuvent ouvrir et utiliser (en particulier dans les entreprises B2B). La question à laquelle vous devez vraiment répondre est de savoir si cette chose est la seule dont vous avez besoin pour ce poste ? Et surtout, peuvent-ils apprendre de nouvelles choses ?


Contenu

CSV est un format d'échange de données courant largement pris en charge par les applications grand public, commerciales et scientifiques. Parmi ses utilisations les plus courantes figure le déplacement de données tabulaires [3] [4] entre des programmes qui fonctionnent nativement sur des formats incompatibles (souvent propriétaires ou non documentés). [1] Cela fonctionne malgré le manque de respect de la RFC 4180 (ou de toute autre norme), car de nombreux programmes prennent en charge les variations du format CSV pour l'importation de données.

Par exemple, un utilisateur peut avoir besoin de transférer des informations d'un programme de base de données qui stocke les données dans un format propriétaire, vers une feuille de calcul qui utilise un format complètement différent. Le programme de base de données peut très probablement exporter ses données au format "CSV", le fichier CSV exporté peut ensuite être importé par le tableur.

La RFC 4180 propose une spécification pour le format CSV, cependant, la pratique actuelle ne suit souvent pas la RFC et le terme "CSV" peut faire référence à n'importe quel fichier qui : [2] [5]

  1. est du texte brut utilisant un jeu de caractères tel que ASCII, divers jeux de caractères Unicode (par exemple UTF-8), EBCDIC ou Shift JIS,
  2. se compose d'enregistrements (généralement un enregistrement par ligne),
  3. avec les enregistrements divisés en champs séparés par des délimiteurs (généralement un seul caractère réservé tel que virgule, point-virgule ou tabulation, parfois le délimiteur peut inclure des espaces facultatifs),
  4. où chaque enregistrement a la même séquence de champs.

A l'intérieur de ces contraintes générales, de nombreuses variantes sont utilisées. Par conséquent, sans informations supplémentaires (telles que le respect de la RFC 4180), un fichier prétendu simplement au format "CSV" n'est pas entièrement spécifié. Par conséquent, de nombreuses applications prenant en charge les fichiers CSV permettent aux utilisateurs de prévisualiser les premières lignes du fichier, puis de spécifier le ou les caractères délimiteurs, les règles de guillemets, etc. Si les variations d'un fichier CSV particulier ne sont pas prises en charge par un programme de réception particulier, il est souvent possible d'examiner et de modifier le fichier à la main (c'est-à-dire avec un éditeur de texte) ou d'écrire un script ou un programme pour produire un format conforme.

Les valeurs séparées par des virgules sont un format de données qui précède les ordinateurs personnels de plus d'une décennie : le compilateur IBM Fortran (niveau H étendu) sous OS/360 les a pris en charge en 1972. l'entrée/sortie a été définie dans le FORTRAN 77, approuvé en 1978. L'entrée dirigée par liste utilisait des virgules ou des espaces pour les délimiteurs, de sorte que les chaînes de caractères sans guillemets ne pouvaient pas contenir de virgules ou d'espaces. [7]

Le nom « valeur séparée par des virgules » et l'abréviation « CSV » étaient utilisés en 1983. le manuel ne spécifie pas de convention pour l'insertion de guillemets dans les chaînes entre guillemets. [9]

Les listes de valeurs séparées par des virgules sont plus faciles à saisir (par exemple dans des cartes perforées) que les données alignées sur des colonnes fixes, et étaient moins susceptibles de produire des résultats incorrects si une valeur était perforée d'une colonne de son emplacement prévu.

Des fichiers séparés par des virgules sont utilisés pour l'échange d'informations de base de données entre des machines de deux architectures différentes. Le caractère en texte brut des fichiers CSV évite largement les incompatibilités telles que l'ordre des octets et la taille des mots. Les fichiers sont en grande partie lisibles par l'homme, il est donc plus facile de les traiter en l'absence d'une documentation ou d'une communication parfaite. [dix]

La principale initiative de normalisation — transformer "de facto définition floue" en une définition plus précise et de jure un — était en 2005, avec RFC4180, [11] définissant CSV comme un type de contenu MIME. Plus tard, en 2013, certaines des lacunes de la RFC4180 ont été corrigées par une recommandation du W3C. [12]

En 2014, l'IETF a publié la RFC7111 [13] décrivant l'application de fragments d'URI aux documents CSV. RFC7111 spécifie comment les plages de lignes, de colonnes et de cellules peuvent être sélectionnées à partir d'un document CSV à l'aide d'index de position.

En 2015, le W3C, dans une tentative d'améliorer CSV avec une sémantique formelle, a rendu public le premier projets de recommandations pour les normes de métadonnées CSV, qui a commencé comme recommandations en décembre de la même année. [14]

Les formats CSV sont mieux utilisés pour représenter des ensembles ou des séquences d'enregistrements dans lesquels chaque enregistrement a une liste identique de champs. Cela correspond à une relation unique dans une base de données relationnelle ou à des données (mais pas à des calculs) dans une feuille de calcul typique.

Le format remonte aux premiers jours de l'informatique d'entreprise et est largement utilisé pour transmettre des données entre des ordinateurs avec des tailles de mots internes différentes, des besoins de formatage des données, etc. Pour cette raison, les fichiers CSV sont communs sur toutes les plates-formes informatiques.

CSV est un fichier texte délimité qui utilise une virgule pour séparer les valeurs (de nombreuses implémentations d'outils d'import/export CSV permettent d'utiliser d'autres séparateurs, par exemple, l'utilisation d'une ligne "Sep=^" comme première ligne dans le fichier *.csv fichier entraînera l'ouverture du fichier par Excel en s'attendant à ce que le curseur "^" soit le séparateur au lieu de la virgule ","). Les implémentations CSV simples peuvent interdire les valeurs de champ qui contiennent une virgule ou d'autres caractères spéciaux tels que les sauts de ligne. Des implémentations CSV plus sophistiquées le permettent, souvent en exigeant des caractères " (guillemets doubles) autour des valeurs qui contiennent des caractères réservés (tels que des virgules, des guillemets doubles ou, plus rarement, des retours à la ligne). Les guillemets doubles incorporés peuvent alors être représentés par une paire de guillemets doubles, [15] ou en préfixant un guillemet double avec un caractère d'échappement tel qu'une barre oblique inverse (par exemple dans Sybase Central).

Les formats CSV ne sont pas limités à un jeu de caractères particulier. [1] Ils fonctionnent aussi bien avec les jeux de caractères Unicode (tels que UTF-8 ou UTF-16) qu'avec ASCII (bien que des programmes particuliers prenant en charge CSV puissent avoir leurs propres limitations). Les fichiers CSV survivront même normalement à la traduction naïve d'un jeu de caractères à un autre (contrairement à presque tous les formats de données propriétaires). CSV ne fournit cependant aucun moyen d'indiquer quel jeu de caractères est utilisé, il doit donc être communiqué séparément ou déterminé à l'extrémité de réception (si possible).

Les bases de données qui incluent plusieurs relations ne peuvent pas être exportées en tant que fichier CSV unique [ citation requise ] . De même, CSV ne peut pas naturellement représenter des données hiérarchiques ou orientées objet. En effet, chaque enregistrement CSV doit avoir la même structure. CSV est donc rarement approprié pour les documents créés avec HTML, XML ou d'autres technologies de balisage ou de traitement de texte.

Les bases de données statistiques dans divers domaines ont souvent une structure généralement relationnelle, mais avec quelques groupes de domaines répétables. Par exemple, les bases de données sur la santé telles que l'Enquête démographique et de santé répètent généralement certaines questions pour chaque enfant d'un parent donné (peut-être jusqu'à un nombre maximum fixe d'enfants). Les systèmes d'analyse statistique incluent souvent des utilitaires qui peuvent « faire tourner » de telles données, par exemple, un enregistrement « parent » qui comprend des informations sur cinq enfants peut être divisé en cinq enregistrements distincts, chacun contenant (a) les informations sur un enfant, et (b) une copie de toutes les informations non spécifiques à l'enfant. CSV peut représenter la forme "verticale" ou "horizontale" de ces données.

Dans une base de données relationnelle, des problèmes similaires sont facilement traités en créant une relation distincte pour chacun de ces groupes et en connectant les enregistrements « enfants » aux enregistrements « parents » associés à l'aide d'une clé étrangère (comme un numéro d'identification ou le nom du parent). Dans les langages de balisage tels que XML, ces groupes sont généralement inclus dans un élément parent et répétés si nécessaire (par exemple, plusieurs nœuds <child> dans un seul nœud <parent>). Avec CSV, il n'y a pas de solution à fichier unique largement acceptée.

Chaque logiciel qui fonctionne avec CSV a ses limites sur le nombre maximal de lignes que le fichier CSV peut avoir. Vous trouverez ci-dessous une liste de logiciels courants et de leurs limitations : [16]

  • Microsoft Excel : 1 048 576 lignes limite
  • Numéros Apple : 1 000 000 lignes
  • Google Sheets : limite de 5 000 000 cellules (il s'agit d'une combinaison de colonnes et de lignes)
  • OpenOffice et LibreOffice : 1 048 576 lignes
  • Éditeurs de texte (programmes comme WordPad, TextEdit, etc.) : aucune limite de ligne ou de cellule

Le nom "CSV" indique l'utilisation de la virgule pour séparer les champs de données. Néanmoins, le terme « CSV » est largement utilisé pour désigner une grande famille de formats qui diffèrent à bien des égards. Certaines implémentations autorisent ou exigent des guillemets simples ou doubles autour de certains ou de tous les champs et d'autres réservent le premier enregistrement en tant qu'en-tête contenant une liste de noms de champs. Le jeu de caractères utilisé n'est pas défini : certaines applications nécessitent une marque d'ordre d'octet (BOM) Unicode pour appliquer l'interprétation Unicode (parfois même une nomenclature UTF-8). [1] Les fichiers qui utilisent le caractère de tabulation au lieu de virgule peuvent être plus précisément appelés « TSV » pour les valeurs séparées par des tabulations.

D'autres différences d'implémentation incluent la gestion de séparateurs de champs plus courants (tels que l'espace ou le point-virgule) et les caractères de nouvelle ligne à l'intérieur des champs de texte. Une autre subtilité est l'interprétation d'une ligne blanche : elle peut également être le résultat de l'écriture d'un enregistrement de champs nuls, ou d'un enregistrement d'un champ de longueur nulle donc le décodage est ambigu.

Paquet de données tabulaires sans friction OKI Modifier

En 2011, l'Open Knowledge Foundation (OKF) et divers partenaires ont créé un groupe de travail sur les protocoles de données, qui a ensuite évolué pour devenir l'initiative Frictionless Data. L'un des principaux formats qu'ils ont publiés était le paquet de données tabulaires. Le package de données tabulaires était fortement basé sur CSV, l'utilisant comme format de transport de données principal et ajoutant des métadonnées de type et de schéma de base (CSV ne dispose d'aucune information de type pour distinguer la chaîne "1" du nombre 1). [17]

La Frictionless Data Initiative a également fourni un format de description de dialecte CSV standard pour décrire différents dialectes de CSV, par exemple en spécifiant le séparateur de champ ou les règles de citation. [18]

Norme de données tabulaires Internet W3C Modifier

En 2013, le groupe de travail "CSV sur le Web" du W3C a commencé à spécifier des technologies offrant une plus grande interopérabilité pour les applications Web utilisant CSV ou des formats similaires. [19] Le groupe de travail a terminé ses travaux en février 2016, et est officiellement clôturé en mars 2016 avec la publication d'un ensemble de documents et de recommandations du W3C [20] pour la modélisation des « données tabulaires », [21] et l'amélioration du CSV avec des métadonnées et de la sémantique .

Norme RFC 4180 Modifier

La norme technique RFC 4180 de 2005 formalise le format de fichier CSV et définit le type MIME "text/csv" pour la gestion des champs textuels. Cependant, l'interprétation du texte de chaque champ est toujours spécifique à l'application. Les fichiers qui suivent la norme RFC 4180 peuvent simplifier l'échange CSV et doivent être largement portables. Parmi ses exigences :

  • Lignes de style MS-DOS qui se terminent par des caractères (CR/LF) (facultatif pour la dernière ligne).
  • Un enregistrement d'en-tête facultatif (il n'y a aucun moyen sûr de détecter s'il est présent, il faut donc faire attention lors de l'importation).
  • Chaque enregistrement devrait contiennent le même nombre de champs séparés par des virgules.
  • N'importe quel domaine mai être cité (avec des guillemets doubles).
  • Champs contenant un saut de ligne, des guillemets doubles ou des virgules devrait être cité. (S'ils ne le sont pas, le fichier sera probablement impossible à traiter correctement.)
  • Si des guillemets doubles sont utilisés pour entourer les champs, puis un guillemet double dans un champ doit être représenté par deux guillemets doubles.

Le format peut être traité par la plupart des programmes qui prétendent lire les fichiers CSV. Les exceptions sont (une) les programmes peuvent ne pas prendre en charge les sauts de ligne dans les champs entre guillemets, (b) les programmes peuvent confondre l'en-tête facultatif avec des données ou interpréter la première ligne de données comme un en-tête facultatif et (c) les guillemets doubles dans un champ peuvent ne pas être analysés correctement automatiquement.

Il existe de nombreux documents informels décrivant les formats "CSV". IETF RFC 4180 (résumé ci-dessus) définit le format du type MIME "text/csv" enregistré auprès de l'IANA.

Les règles typiques de ces spécifications et implémentations "CSV" sont les suivantes :

  • CSV est un format de données délimité qui a des champs/colonnes séparés par le caractère virgule et des enregistrements/lignes terminés par des retours à la ligne.
  • Un fichier CSV ne nécessite pas de codage de caractères, d'ordre d'octet ou de format de fin de ligne spécifique (certains logiciels ne prennent pas en charge toutes les variantes de fin de ligne).
  • Un enregistrement se termine à une fin de ligne. Cependant, les fins de ligne peuvent être intégrées en tant que données dans des champs, de sorte que le logiciel doit reconnaître les séparateurs de ligne entre guillemets (voir ci-dessous) afin d'assembler correctement un enregistrement entier à partir peut-être de plusieurs lignes.
  • Tous les enregistrements doivent avoir le même nombre de champs, dans le même ordre.
  • Les données dans les champs sont interprétées comme une séquence de caractères, et non comme une séquence de bits ou d'octets (voir RFC 2046, section 4.1). Par exemple, la quantité numérique 65535 peut être représentée comme les 5 caractères ASCII "65535" (ou peut-être d'autres formes telles que "0xFFFF", "000065535.000E+00", etc.) mais pas comme une séquence de 2 octets destinée à être traité comme un seul entier binaire plutôt que comme deux caractères (par exemple, les nombres 11264–11519 ont une virgule comme octet de poids fort : ord ( ',' ) * 256 .. ord ( ',' ) * 256 + 255 ). If this "plain text" convention is not followed, then the CSV file no longer contains sufficient information to interpret it correctly, the CSV file will not likely survive transmission across differing computer architectures, and will not conform to the text/csv MIME type.
  • Adjacent fields must be separated by a single comma. However, "CSV" formats vary greatly in this choice of separator character. In particular, in locales where the comma is used as a decimal separator, semicolon, TAB, or other characters are used instead.
  • Any field mai être quoted (that is, enclosed within double-quote characters), while some fields doit be quoted, as specified in the following rules and examples:
  • Fields with embedded commas or double-quote characters must be quoted.
  • Each of the embedded double-quote characters must be represented by a pair of double-quote characters.
  • Fields with embedded line breaks must be quoted (however, many CSV implementations do not support embedded line breaks).
  • In some CSV implementations [which?] , leading and trailing spaces and tabs are trimmed (ignored). Such trimming is forbidden by RFC 4180, which states "Spaces are considered part of a field and should not be ignored."
  • According to RFC 4180, spaces outside quotes in a field are not allowed however, the RFC also says that "Spaces are considered part of a field and should not be ignored." and "Implementors should 'be conservative in what you do, be liberal in what you accept from others' (RFC 793, section 2.10) when processing CSV files."
  • In CSV implementations that do trim leading or trailing spaces, fields with such spaces as meaningful data must be quoted.
  • Double quote processing need only apply if the field starts with a double quote. Note, however, that double quotes are not allowed in unquoted fields according to RFC 4180.
  • The first record may be a "header", which contains column names in each of the fields (there is no reliable way to tell whether a file does this or not however, it is uncommon to use characters other than letters, digits, and underscores in such column names).
Année Faire, construire Modèle La description Prix
1997 Gué E350 ac, abs, moon 3000.00
1999 Chevrolet Venture "Extended Edition" 4900.00
1999 Chevrolet Venture "Extended Edition, Very Large" 5000.00
1996 Jeep Grand Cherokee MUST SELL!
air, moon roof, loaded
4799.00

The above table of data may be represented in CSV format as follows:

Example of a USA/UK CSV file (where the decimal separator is a period/full stop and the value separator is a comma):

Example of an analogous European CSV/DSV file (where the decimal separator is a comma and the value separator is a semicolon):

The latter format is not RFC 4180 compliant. [22] Compliance could be achieved by the use of a comma instead of a semicolon as a separator and either the international notation for the representation of the decimal mark or the practice of quoting all numbers that have a decimal mark.

The CSV file format is supported by almost all spreadsheets and database management systems, including Apple Numbers, LibreOffice Calc, and Apache OpenOffice Calc. Microsoft Excel also supports CSV, but with restrictions in comparison to other spreadsheet software (e.g., as of 2019 [update] Excel still cannot export CSV files in the commonly used UTF-8 character encoding).

CSV format is supported by libraries available for many programming languages. Most provide some way to specify the field delimiter, decimal separator, character encoding, quoting conventions, date format, etc.

The emacs editor can operate on CSV files using csv-nav mode. [23]

Many utility programs on Unix-style systems (such as cut, paste, join, sort, uniq, awk) can split files on a comma delimiter, and can therefore process simple CSV files. However, this method does not correctly handle commas within quoted strings.


Send invitation emails to users

Switch to the Utilisateurs view if you are not on the page already, and select Invite all on the toolbar.

Sur le Send invitation by email page, enter an optional message, and then select Send. The email automatically includes the registration link. You can get this registration link by selecting . (ellipsis) on the toolbar, and Registration link.

You see the status of invitation dans le Utilisateurs liste. The status should change to Sending and then to Sent on <date>.

For more information about adding students to a class and managing their usage of the lab, see How to configure student usage.