Comment corriger des séquences dans des données de nombres à l’aide d’un éditeur de texte
Vous pouvez utiliser l’application Numbers d’Apple pour un travail de tableur complexe. Mais il ne parvient pas (comme Microsoft Excel) à nettoyer les données de la feuille de calcul. Microsoft Word vous permet d’utiliser des modèles pour faire correspondre et remplacer des valeurs, mais vous ne pouvez pas le faire dans Numbers, Excel ou Pages.
Cela se produit lorsque vous formatez et importez ou collez une valeur de date, de nombre ou de devise dans Numbers différemment. Numbers corrige de nombreux formats standard en entrée, mais lors du collage ou de l’ouverture d’un fichier CSV (valeurs séparées par des virgules), les mêmes données peuvent rester dans leur forme d’origine différente, ce qui est courant depuis et depuis d’autres logiciels Le format d’exportation du site Web.
Vous le voyez le plus souvent dans les noms, où vous obtenez une liste formatée d’une manière – par exemple « nom, prénom » – et vous en voulez une autre. Ou chaque partie des données dont vous disposez a des noms formatés différemment. Les initiales de la première, de la dernière et du deuxième prénom peuvent être divisées en trois champs.Cependant, ce que vous voulez, c’est Normalisé Données – Éléments avec la même structure afin qu’ils puissent être triés, numérisés visuellement et autrement organisés.
Il existe une solution très simple qui ne coûte rien et permet d’économiser beaucoup de saisies et d’éditions manuelles. Numbers vous permet de copier le contenu de n’importe quel nombre de cellules et de le coller dans un éditeur de texte. Tant que vous conservez les tabulations et les retours définitifs lors de l’édition, vous pouvez corriger ce que vous avez collé dans un éditeur de texte, copier les données modifiées et les coller dans la zone exacte que vous avez copiée dans Numbers.
Je compte sur BBEdit pour effectuer une correspondance générique avancée appelée « Regular Expression Patch Matching » (regexp en abrégé) et remplacer les données par les éléments correspondants. Certaines applications prennent en charge les caractères génériques, où vous pouvez insérer des caractères spéciaux ou des séquences pour correspondre à des parties de texte, telles que n’importe quel nombre (0 à 9) ou des phrases complètes, définies par des points et d’autres signes de ponctuation de fin. Les expressions régulières sont complexes, presque un simple langage de programmation. Les éléments que vous recherchez dans votre recherche peuvent être regroupés afin que vous puissiez les réorganiser dans le cadre d’un remplacement de texte. BBEdit marque la partie de recherche du Grep après la version Unix de l’expression régulière. (La version gratuite de BBEdit possède toutes les fonctionnalités dont vous avez besoin. Téléchargez la version standard et installez-la, et vous pourrez accéder à toutes les fonctionnalités pendant votre essai de 30 jours. Lorsque l’essai se termine, l’application « rétrograde » vers un ensemble de fonctionnalités plus limité qui contient ce dont cet article a besoin Une collection de toutes les options de recherche et de remplacement.)
Par exemple, supposons que vous ayez des données qui répertorient les noms comme suit :
Jane Doe (première et dernière dans un champ) Jane et Doe (première et dernière dans différents champs) Doe, Jane (nom de famille en premier, virgule, puis prénom)
À des fins de formatage et de feuille de calcul, vous décidez de séparer tous les noms dans des champs de prénom et de nom afin de pouvoir trier par nom de famille, mais utilisez uniquement les prénoms lors de l’exportation vers un programme de liste de diffusion.
Tout d’abord, assurez-vous d’avoir deux champs adjacents dans la table des nombres pour le prénom et le nom. Si vous avez un champ Nom complet, sélectionnez une cellule dans le champ et appuyez sur Option + Flèche droite pour ajouter une colonne après la colonne Nom. Réétiquetez vos colonnes de prénom et de nom de famille pour plus de clarté.
Ensuite, copiez les données en faisant glisser la sélection, autour du contenu d’un seul champ ou du contenu des deux champs si vous avez un ensemble mixte de données.
Maintenant, collez dans BBEdit. Vous verrez que chaque champ est séparé par une tabulation sur une ligne. (Si vous souhaitez voir les tabulations, les espaces, les retours chariot et d’autres caractères, sélectionnez Affichage > Affichage du texte > Afficher invisible.)
Vous pouvez écrire des valeurs de recherche/remplacement pour corriger les données.choisir Rechercher > Rechercher et cochez la case Grep pour activer les expressions régulières. Pour corriger tous Doe, Jane en les plaçant dans deux champs dans le bon ordre, vous pouvez utiliser la recherche suivante :
^(.*?), (.*)$
Le modèle signifie : correspondre à partir du début de la ligne (^), rechercher tout le texte jusqu’à la première virgule ((.* ?)) et les regrouper pour les utiliser dans la ligne de remplacement ; puis trouver une commande et un espace, puis mettre le Regroupez tout le texte ((.*)) jusqu’à la fin de la ligne ($).
Dans le champ de remplacement, vous saisiriez :
\2\t\1
Beaucoup plus simple ! Autrement dit, obtenez le deuxième groupement à partir du modèle de recherche (\2), puis utilisez une tabulation (\t), puis utilisez le premier groupement (\1).Doe, Jane devient Jane[tab]Ministère de l’Énergie.
Si le modèle est orphelin ou l’ensemble des noms, vous pouvez cliquer sur Remplacer tout. Vous pouvez également sélectionner une plage de texte dans BBEdit et cocher Texte sélectionné uniquement dans la boîte de dialogue Rechercher avant de cliquer sur Remplacer tout.
prévenir: Faites une copie avant de revenir à Numbers : si vous copiez plus de lignes ou de colonnes dans la sélection que vous ne commencez ou n’avez l’intention de remplir, Numbers permet au collage d’écraser vos autres données.
Après avoir reformaté toutes les données comme vous le souhaitez, sélectionnez-les dans BBEdit, copiez-les, puis dans Numbers, sélectionnez la cellule de départ dans laquelle coller. Les lignes collées descendront et les onglets seront convertis en cellules de colonne à droite.
Lors d’une importation récente, j’ai apporté une très petite modification qui dépassait encore les capacités de Numbers : la date et l’heure étaient au format 2019/10/28, 22:51, et Numbers ne reconnaissait pas les virgules comme des horodatages. J’aurais pu diffuser des données dans les deux sens via BBEdit pour simplement trouver la virgule et la remplacer par rien. Mais ceci est un exemple plus simple, comme le montre l’image ci-dessous.
Rangée du haut : en partant du mauvais format (virgule entre la date et l’heure), utilisez la fonction de recherche et de remplacement de BBEdit pour faire correspondre le modèle et le corriger. Rangée du bas : collez les données modifiées et utilisez les options de formatage des données de Numbers pour les afficher comme vous le souhaitez. S’il est reformaté, vous savez que les données sont correctement structurées et peuvent être triées.
Voir le manuel de BBEdit pour plus de détails sur les expressions régulières. Le développeur Bare Bones Software fournit une explication détaillée. Mais vous pouvez généralement trouver la recette spécifique dont vous avez besoin avec un moteur de recherche Internet : entrez « regexp » et ce que vous voulez faire, et quelqu’un a généralement déjà résolu le problème. Les expressions régulières standard fonctionnent dans la fonction de recherche de BBEdit.
Dans un essai complet de 30 jours de BBEdit ou une copie payante de l’application, vous pouvez également tester vos modèles en utilisant le Pattern Playground du logiciel – lisez la documentation de Bare Bones et cette introduction Apple Écrivez-le.
Le Pattern Playground vous permet de tester nos modèles et de voir les résultats en temps réel. Il vous aide à écrire des requêtes correctes.
Demandez Mac 911
Nous avons compilé une liste des questions les plus fréquemment posées, ainsi que des liens vers des réponses et des colonnes : lisez notre super FAQ pour voir si votre question est couverte. Sinon, nous sommes toujours à la recherche de nouveaux problèmes à résoudre ! Envoyez votre e-mail à mac911@macworld.com, y compris les captures d’écran appropriées et si vous souhaitez utiliser votre nom complet. Toutes les questions ne recevront pas de réponse et nous ne répondrons pas aux e-mails ni ne fournirons de conseils de dépannage directs.