Table des matières
1. Tête et queue" >1. Tête et queue
二、wc" >二、wc
Trois, grep" >Trois, grep
Quatre, tr" >Quatre, tr
五、sort" >五、sort
六、sed" >六、sed
七、cut" >七、cut
八、uniq" >八、uniq
九、awk" >九、awk
Maison Tutoriel système Linux L'essentiel de l'analyse de données Linux : 9 commandes pratiques

L'essentiel de l'analyse de données Linux : 9 commandes pratiques

Feb 14, 2024 pm 08:18 PM
linux linux教程 linux系统 linux命令 csv文件 shell脚本 Linux embarqué Débuter avec Linux apprentissage Linux

L'analyse des données est aujourd'hui l'une des compétences les plus populaires. Elle peut nous aider à extraire des informations précieuses à partir d'énormes quantités de données pour soutenir la prise de décision et l'innovation. Cependant, pour mener une analyse efficace des données, nous devons non seulement maîtriser les théories et les méthodes pertinentes, mais également maîtriser l’utilisation de certains outils et plateformes. Le système Linux est l'un des systèmes d'exploitation couramment utilisés par les analystes de données. Il fournit de nombreuses commandes puissantes et flexibles qui peuvent nous aider à résoudre divers problèmes de données. Cet article vous présentera 9 commandes couramment utilisées pour l'analyse de données sous les systèmes Linux, ainsi que leurs fonctions et leur utilisation. Que vous soyez un débutant ou un vétéran de Linux, ces commandes rendront votre travail d'analyse de données plus efficace et plus pratique.

Lessentiel de lanalyse de données Linux : 9 commandes pratiques

1. Tête et queue

Tout d’abord, commençons par le traitement des fichiers. Quel est le contenu du fichier ? Quel est son format ? Vous pouvez utiliser la commande cat pour afficher le fichier dans le terminal, mais elle n'est évidemment pas adaptée au traitement de fichiers au contenu long.

Entrez la tête et la queue, qui peuvent afficher complètement le nombre de lignes spécifié dans le fichier. Si vous ne précisez pas le nombre de lignes, 10 d'entre elles seront affichées par défaut.

1. $ tail -n 3 jan2017articles.csv
2. 02 Jan 2017,Article,Scott Nesbitt,3 tips for effectively using wikis for documentation,1
,/article/17/1/tips-using-wiki-documentation,"Documentation, Wiki",710
3. 02 Jan 2017,Article,Jen Wike Huger,The Opensource.com preview for January,0,/article/17
/1/editorial-preview-january,,358
4. 02 Jan 2017,Poll,Jason Baker,What is your open source New Year's resolution?,1,/poll/1
7/1/what-your-open-source-new-years-resolution,,186
Copier après la connexion

Dans les trois dernières lignes, j'ai pu trouver la date, le nom de l'auteur, le titre et quelques autres informations. Cependant, en raison du manque d’en-têtes de colonnes, je ne connais pas la signification spécifique de chaque colonne. Consultez les titres spécifiques à chaque colonne ci-dessous :

1. $ head -n 1 jan2017articles.csv
2. Post date,Content type,Author,Title,Comment count,Path,Tags,Word count
Copier après la connexion

Maintenant, tout est très clair, nous pouvons voir la date de publication, le type de contenu, l'auteur, le titre, le nombre de soumissions, les URL associées, les balises pour chaque article et le nombre de mots.

二、wc

Mais que se passe-t-il si vous avez besoin d'analyser des centaines, voire des milliers d'articles ? Ici, vous devez utiliser la commande wc - qui est l'abréviation de « word count ». wc peut compter les octets, les caractères, les mots ou les lignes d'un fichier. Dans cet exemple, nous souhaitons connaître le nombre de lignes de l’article.

  1. $ wc -l jan2017articles.csv 93 jan2017articles.csv

Ce fichier comporte 93 lignes au total. Étant donné que la première ligne contient le titre du fichier, on peut supposer que ce fichier est une liste de 92 articles.

Trois, grep

Une nouvelle question se pose ci-dessous : combien de ces articles sont liés à des sujets de sécurité ? Pour atteindre l'objectif, nous supposons que les articles requis mentionneront le mot sécurité dans le titre, la balise ou autre position. À l'heure actuelle, l'outil grep peut être utilisé pour rechercher des fichiers par caractères spécifiques ou implémenter d'autres modèles de recherche. Il s'agit d'un outil extrêmement puissant car nous pouvons même créer des modèles de correspondance extrêmement précis à l'aide d'expressions régulières. Mais ici, il suffit de trouver une simple chaîne.

1. $ grep -i "security" jan2017articles.csv
2. 30 Jan 2017,Article,Tiberius Hefflin,4 ways to improve your security online right now,3,
/article/17/1/4-ways-improve-your-online-security,Security and encryption,1242
3. 28 Jan 2017,Article,Subhashish Panigrahi,How communities in India support privacy and 
software freedom,0,/article/17/1/how-communities-india-support-privacy-software-freedom,Security and encryption,453
4. 27 Jan 2017,Article,Alan Smithee,Data Privacy Day 2017: Solutions for everyday privacy
,5,/article/17/1/every-day-privacy,"Big data, Security and encryption",1424
5. 04 Jan 2017,Article,Daniel J Walsh,50 ways to avoid getting hacked in 2017,14,/article
/17/1/yearbook-50-ways-avoid-getting-hacked,"Yearbook, 2016 Open Source Yearbook, Security and encryption, Containers, Docker,
 Linux",2143

我们使用的格式为grep加-i标记(告知grep不区分大小写),再加我们希望搜索的模式,最后是我们所搜索的目标文件的

位置。最后我们找到了
Copier après la connexion

4 articles liés à la sécurité. Si la portée de la recherche est plus spécifique, nous pouvons utiliser pipe - il peut combiner grep avec la commande wc pour savoir combien de lignes mentionnent du contenu de sécurité.

$ grep -i "security" jan2017articles.csv | wc -l 4
Copier après la connexion

De cette façon, wc extraira la sortie de la commande grep et l'utilisera comme entrée. Il est évident que cette combinaison, couplée à un peu de script shell, transforme instantanément le terminal en un puissant outil d'analyse de données.

Quatre, tr

Dans la plupart des scénarios d'analyse, nous serons confrontés à des fichiers CSV - mais comment les convertir vers d'autres formats pour différentes méthodes d'application ? Ici, nous le convertissons en formulaire HTML pour l'utilisation des données via des tableaux ? La commande tr peut vous aider à atteindre cet objectif, elle peut convertir un type de caractères en un autre type. De même, vous pouvez également utiliser la commande pipe pour réaliser un ancrage sortie/entrée.

Ensuite, essayons un autre exemple en plusieurs parties, qui consiste à créer un fichier TSV (valeurs séparées par des tabulations) qui contient uniquement les articles publiés le 20 janvier.

=$ grep "20 Jan 2017" jan2017articles.csv | tr ',' '/t' > jan20only.tsv
Copier après la connexion

Tout d’abord, nous utilisons grep pour la requête de date. Nous redirigeons ce résultat vers la commande tr et utilisons cette dernière pour remplacer toutes les virgules par des tabulations (représentées par '/t'). Mais où va le résultat ? Ici, nous utilisons le caractère > pour afficher le résultat dans un nouveau fichier plutôt que sur l'écran. De cette façon, nous pouvons garantir que le fichier dqywjan20only.tsv contient les données attendues.

$ cat jan20only.tsv 20 Jan 2017 Article Kushal Das 5 ways to expand your project's 
contributor base 2 /article/17/1/expand-project-contributor-base Getting started 690 20 Jan 2017 Article D Ruth Bavousett How to write web apps 
in R with Shiny 2 /article/17/1/writing-new-web-apps-shiny Web development 218 20 Jan 2017 Article Jason Baker "Top 5: Shell scripting the
 Cinnamon Linux desktop environment and more" 0 /article/17/1/top-5-january-20 Top 5 214 20 Jan 2017 Article Tracy Miranda How is your community promoting 
diversity? 1 /article/17/1/take-action-diversity-tech Diversity and inclusion 1007
Copier après la connexion

五、sort

如果我们先要找到包含信息最多的特定列,又该如何操作?假设我们需要了解哪篇文章包含最长的新文章列表,那么面对之前得出的1月20日文章列表,我们可以使用sort命令对列字数进行排序。在这种情况下,我们并不需要使用中间文件,而可以继续使用pipe。不过将长命令链拆分成较短的部分往往能够简化整个操作过程。

  1. ‘/t’ -k8 jan20only.tsv | head -n 1
  2. 20 Jan 2017 Article Tracy Miranda How is your community promoting diversity? 1 /article/17/1/take-action-diversity-tech Diversity and inclusion 1007

以上是一条长命令,我们尝试进行拆分。首先,我们使用sort命令对字数进行排序。-nr选项告知sort以数字排序,并将结果进行反向排序(由大到小)。此后的-t则告知其中的分隔符为。其中的要求此shell为一条需要处理的字符串,并将/n返回为tab。而-k8部分则告知sort命令使用第八列,即本示例中进行字数统计的目标列。

最后,输出结果被pipe至head,处理后在结果中显示此文件中包含最多字数的文章标题。

六、sed

大家可能还需要在文件中选择特定某行。这里可以使用sed。如果希望将全部包含标题的多个文件加以合并,并只为整体文件显示一组标题,即需要清除额外内容; 或者希望只提取特定行范围,同样可以使用sed。另外,sed还能够很好地完成批量查找与替换任务。

下面立足之前的文章列表创建一个不含标题的新文件,用于同其他文件合并(例如我们每月都会定期生成某个文件,现在需要将各个月份的内容进行合并)。

  1. $ sed ‘1 d’ jan2017articles.csv > jan17no_headers.csv

其中的“1 d”选项要求sed删除第一行。

七、cut

了解了如何删除行,那么我们该如何删除列?或者说如何只选定某一列?下面我们尝试为之前生成的列表创建一份新的作者清单。

  1. $ cut -d’,’ -f3 jan17no_headers.csv > authors.txt

在这里,通过cut与-d相配合代表着我们需要第三列(-f3),并将结果发送至名为authors.txt的新文件。

八、uniq

作者清单已经完成,但我们要如何知悉其中包含多少位不同的作者?每位作者又各自编写了多少篇文章?这里使用unip。下面我们对文件进行sort排序,找到唯一值,而后计算每位作者的文章数量,并用结果替换原本内容。

  1. sort authors.txt | uniq -c > authors.txt

现在已经可以看到每位作者的对应文章数,下面检查最后三行以确保结果正确。

  1. $ tail -n3 authors-sorted.txt
  2. 1 Tracy Miranda
  3. 1 Veer Muchandi
  4. 3 VM (Vicky) Brasseur

九、awk

最后让我们了解最后一款工具,awk。awk是一款出色的替换性工具,当然其功能远不止如此。下面我们重新回归1月12日文章列表TSV文件,利用awk创建新列表以标明各篇文章的作者以及各作者编写的具体字数。

  1. $ awk -F "/t" '{print NF}' jan20only.tsv
  2. Kushal Das 690
  3. D Ruth Bavousett 218
  4. Jason Baker 214
  5. Tracy Miranda 1007

Le -F "/t" est utilisé pour indiquer à awk qu'il traite actuellement des données séparées par des tabulations. À l’intérieur des accolades, nous fournissons à awk le code d’exécution. signifie qu'il affichera la troisième ligne, tandis que NF signifie qu'il affichera la dernière ligne (c'est-à-dire l'abréviation de « nombre de champs ») et ajoutera deux espaces entre les deux résultats pour une division claire.

Bien que l'exemple répertorié ici soit à petite échelle et ne semble pas nécessiter l'utilisation des outils ci-dessus, si la portée est étendue à un fichier contenant 93 000 lignes, il est évidemment difficile d'utiliser un tableur pour le traiter.

En utilisant ces outils simples et ces petits scripts, vous pouvez éviter d'utiliser des outils de base de données et effectuer facilement une grande quantité de travaux de statistiques de données. Que vous soyez professionnel ou amateur, son rôle ne peut être ignoré.

Grâce à cet article, vous avez découvert les 9 commandes couramment utilisées pour l'analyse des données sous les systèmes Linux, ainsi que leurs fonctions et leur utilisation. Ces commandes couvrent les opérations sur les fichiers, la gestion des répertoires, la redirection de sortie, les canaux, les liens, etc., et peuvent vous aider à effectuer divers traitements et analyses de données sous les systèmes Linux. Bien entendu, ces commandes ne sont que quelques-unes des nombreuses commandes fournies par le système Linux. Si vous souhaitez en savoir plus sur le système Linux et l'analyse des données, vous devez toujours continuer à explorer et à vous entraîner. J'espère que cet article pourra être utile pour votre étude et votre travail. Vous êtes également invités à partager d'autres commandes Linux pratiques que vous utilisez ou découvrez.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Quelle configuration de l'ordinateur est requise pour VScode Quelle configuration de l'ordinateur est requise pour VScode Apr 15, 2025 pm 09:48 PM

Vs Code Système Exigences: Système d'exploitation: Windows 10 et supérieur, MacOS 10.12 et supérieur, processeur de distribution Linux: minimum 1,6 GHz, recommandé 2,0 GHz et au-dessus de la mémoire: minimum 512 Mo, recommandée 4 Go et plus d'espace de stockage: Minimum 250 Mo, recommandée 1 Go et plus d'autres exigences: connexion du réseau stable, xorg / wayland (Linux) recommandé et recommandée et plus

VScode ne peut pas installer l'extension VScode ne peut pas installer l'extension Apr 15, 2025 pm 07:18 PM

Les raisons de l'installation des extensions de code vs peuvent être: l'instabilité du réseau, les autorisations insuffisantes, les problèmes de compatibilité système, la version de code vs est trop ancienne, un logiciel antivirus ou des interférences de pare-feu. En vérifiant les connexions réseau, les autorisations, les fichiers journaux, la mise à jour vs du code, la désactivation des logiciels de sécurité et le redémarrage du code ou des ordinateurs, vous pouvez progressivement dépanner et résoudre les problèmes.

Comment exécuter le code Java dans le bloc-notes Comment exécuter le code Java dans le bloc-notes Apr 16, 2025 pm 07:39 PM

Bien que le bloc-notes ne puisse pas exécuter directement le code Java, il peut être réalisé en utilisant d'autres outils: à l'aide du compilateur de ligne de commande (Javac) pour générer un fichier bytecode (filename.class). Utilisez l'interpréteur Java (Java) pour interpréter ByteCode, exécuter le code et sortir le résultat.

Qu'est-ce que VScode pour quoi est VScode? Qu'est-ce que VScode pour quoi est VScode? Apr 15, 2025 pm 06:45 PM

VS Code est le code Visual Studio Nom complet, qui est un éditeur de code multiplateforme gratuit et open source et un environnement de développement développé par Microsoft. Il prend en charge un large éventail de langages de programmation et fournit une mise en surbrillance de syntaxe, une complétion automatique du code, des extraits de code et des invites intelligentes pour améliorer l'efficacité de développement. Grâce à un écosystème d'extension riche, les utilisateurs peuvent ajouter des extensions à des besoins et des langues spécifiques, tels que les débogueurs, les outils de mise en forme de code et les intégrations GIT. VS Code comprend également un débogueur intuitif qui aide à trouver et à résoudre rapidement les bogues dans votre code.

Peut-on utiliser pour mac Peut-on utiliser pour mac Apr 15, 2025 pm 07:36 PM

VS Code est disponible sur Mac. Il a des extensions puissantes, l'intégration GIT, le terminal et le débogueur, et offre également une multitude d'options de configuration. Cependant, pour des projets particulièrement importants ou un développement hautement professionnel, le code vs peut avoir des performances ou des limitations fonctionnelles.

Comment utiliser vscode Comment utiliser vscode Apr 15, 2025 pm 11:21 PM

Visual Studio Code (VSCODE) est un éditeur de code Open Source, Open Source et gratuit développé par Microsoft. Il est connu pour son léger, l'évolutivité et le support pour une large gamme de langages de programmation. Pour installer VScode, veuillez visiter le site officiel pour télécharger et exécuter l'installateur. Lorsque vous utilisez VSCODE, vous pouvez créer de nouveaux projets, modifier le code, déboguer le code, naviguer dans les projets, développer VSCODE et gérer les paramètres. VScode est disponible pour Windows, MacOS et Linux, prend en charge plusieurs langages de programmation et fournit diverses extensions via Marketplace. Ses avantages incluent le léger, l'évolutivité, le support linguistique étendu, les fonctionnalités riches et la version

Quel est le but principal de Linux? Quel est le but principal de Linux? Apr 16, 2025 am 12:19 AM

Les principales utilisations de Linux comprennent: 1. Système d'exploitation du serveur, 2. Système intégré, 3. Système d'exploitation de bureau, 4. Environnement de développement et de test. Linux excelle dans ces domaines, offrant des outils de stabilité, de sécurité et de développement efficaces.

Comment vérifier l'adresse de l'entrepôt de Git Comment vérifier l'adresse de l'entrepôt de Git Apr 17, 2025 pm 01:54 PM

Pour afficher l'adresse du référentiel GIT, effectuez les étapes suivantes: 1. Ouvrez la ligne de commande et accédez au répertoire du référentiel; 2. Exécutez la commande "git Remote -v"; 3. Affichez le nom du référentiel dans la sortie et son adresse correspondante.

See all articles