Preliminary Knowledge - Python Core use Common Data Analysis Library (ⅰ)

Lmandcc 2021-10-28 22:47:28
preliminary knowledge python core use

1、Connaissances préparatoires-pythonUtilisation de base base base commune d'analyse des données(Allez.)

Généralités

Python C'est le langage de programmation le plus populaire au monde aujourd'hui,Et l'un de ses plus grands domaines d'application est l'analyse des données.InpythonParmi les nombreux outils d'analyse des données,pandas- Oui.pythonBase d'analyse de données très couramment utilisée dans,Dans l'analyse des données,Apprentissage automatique,Des domaines tels que l'apprentissage profond sont fréquemment utilisés.Utiliser Pandas On peut. Excel/CSV/TXT/MySQL Attendez que les données soient lues,Ensuite, on procède à divers lavages、Filtration、Perspective、Analyse agrégée,Vous pouvez également dessiner un diagramme linéaire directement、Diagrammes d'analyse des données comme les diagrammes à secteurs,Fonctionnellement, il peut automatiser le traitement de gros fichiers,Capable de réaliser Excel Presque toutes les fonctions et plus puissantes.

Cette expérience se déroulera de façon pratique,IntroductionpandasUtilisation de base de la base d'analyse des données,Laissez tout le monde maîtriser rapidement en peu de tempspythonBase d'analyse des données pourpandasUtilisation de,Constituer une réserve de connaissances pour le codage ultérieur des projets

Environnement expérimental

  • Python 3.7
  • PyCharm

Tâche 1:Installation et configuration de l'environnement

【Objectif expérimental】

Les principaux objectifs de cette expérience sont les suivants:WindowsDans le système d'exploitation,Terminer la tâche de configuration de l'environnement pour cette expérience,Le logiciel requis pour cette expérience est:PyCharm+Python 3.7

【Procédure expérimentale】

1、InstallationPython 3.7

2、InstallationPycharm

3、Installationjupyter、pandas、numpy、notebook

Ouvre.CMD,Et entrez la commande suivante,Installationjupyter、notebook、pandasEtnumpy

pip install jupyter notebook pandas numpy

Une fois l'installation terminée, il y aura un message texte similaire à:

img

Une fois les étapes ci - dessus terminées,La configuration de l'environnement expérimental est terminée,FermerCMDFenêtre

Tâche 2:PandasAnalyse des données sur le terrain

【Objectifs de la Mission】

L'objectif principal de cette tâche est d'utiliserpandasAnalyse des données,Pour que tout le monde comprennepandasFonctions suivantes du module:

  • Travaux préparatoires
  • Vérifier les données
  • Traitement des données manquantes
  • Ajouter une valeur par défaut
  • Supprimer les lignes incomplètes
  • Supprimer les colonnes incomplètes
  • Types de données normalisés
  • Renommer le nom de colonne
  • Enregistrer les résultats

【Étapes de la Mission】

1、Ouvre.CMD,Exécutez la commande suivante,Ouvertjupyter

jupyter notebook

Après avoir exécuté avec succès la commande ci - dessus,Le navigateur par défaut s'ouvre automatiquement,Comme le montre la figure ci - dessous:

img

Après l'ouverture réussie du Navigateur,Créer comme suit notebook Documentation

img

NouveaunotebookEffectuer une opération de renommage

img

img

2、notebook Une fois le fichier créé,Ensuite, dans le nouveau notebook Code d'écriture

Importer Pandas Dans notre code,Les codes sont les suivants:

import pandas as pd

Petit conseil:Après avoir entré le code complet,Appuyez sur【Shift + Enter】Une combinaison de touches exécute le code dans cette cellule,Une opération similaire est nécessaire après avoir entré le Code de chaque cellule plus tard,Code à exécuter

Charger l'ensemble de données,Les codes sont les suivants::

data = pd.read_csv('./data/movie_metadata.csv')

3、Vérifier les données

Avant de voir un ensemble de données5D'accord

data.head()

Les résultats de l'opération sont présentés ci - dessous:

img

Nous pouvons le faire par Pandas Pour voir les données,Peut également être réalisé par Excel Données de visualisation du programme

Pandas Offre quelques options,Ces options permettent de découper les données,Vous pouvez également découper les données.Voici une brève introduction:

  • Voir quelques statistiques de base pour une colonne:data.columnname.describe()
  • Sélectionner une colonne:data['columnname']
  • Sélectionnez les premières lignes d'une colonne:data['columnsname'][:n]
  • Sélectionner plusieurs colonnes:data[['column1','column2']]
  • Where Filtration conditionnelle:data[data['columnname'],condition]

4、Traitement des données manquantes

Le manque de données est l'un des problèmes les plus courants.Les raisons de ce problème sont les suivantes::

  • N'a jamais été correctement rempli
  • Données non disponibles
  • Erreur de calcul

Quelle que soit la raison,Tant qu'il y a des lacunes qui valent la peine d'exister,Peut causer des erreurs dans l'analyse ultérieure des données.Voici quelques méthodes de traitement des données manquantes:

  • Assigner des valeurs par défaut aux données manquantes
  • Enlevez/Supprimer les lignes de données manquantes
  • Enlevez/Supprimer les colonnes manquantes élevées

4.1、Ajouter une valeur par défaut

Remplir avec une chaîne videcountryValeur nulle du champ

data.country= data.country.fillna('')

Utilisez la moyenne pour remplir la valeur vide du champ durée du film

data.duration = data.duration.fillna(data.duration.mean())

4.2、Supprimer les lignes incomplètes

data.dropna()

Les résultats sont les suivants(Parce que la sortie vers plus,Les données intermédiaires ont été omises des résultats.,Afficher uniquement le début et la fin):

img

Comme le montre la figure ci - dessus,En raison de l'article4Valeurs manquantes pour les données de ligne,Il a donc été supprimé.

Conseils:dropnaL'opération ne modifie pas les données brutes,Il modifie une sauvegarde équivalente aux données brutes,Les données brutes n'ont donc pas changé.

Supprimer une ligne entière avec des valeurs de NA:

data.dropna(how='all')

Les résultats sont les suivants:

img

Comme le montre la figure ci - dessus,Parce que la condition est:Supprimer une ligne entière estNADonnées,Par conséquent, les lignes de données qui ne remplissent pas cette condition seront conservées

Nous pouvons également ajouter quelques restrictions,Combien de valeurs non nulles dans une ligne peuvent être conservées(Dans le code suivant,Au moins dans les données de ligne 5 Valeurs non nulles)

data.dropna(thresh=5)

Les résultats sont les suivants:

img

Vous pouvez également spécifier les colonnes pour lesquelles vous souhaitez supprimer les valeurs manquantes

Nous avons title_year Cette colonne est un exemple,Voir d'abord title_year Valeurs manquantes dans cette colonne:

data['title_year'].isnull().value_counts()

Les résultats sont les suivants::

img

Comme le montre la figure ci - dessus,,title_year Existe dans cette colonne108Valeurs manquantes

Voir ci - dessous title_year Situation après suppression des valeurs manquantes

new_data = data.dropna(subset=['title_year'])
new_data['title_year'].isnull().value_counts()

Au - dessus subset Les paramètres nous permettent de sélectionner les colonnes à vérifier.Si plusieurs colonnes,Peut utiliser le nom de colonne list Comme paramètre.

Les résultats sont les suivants:

img

4.3、Supprimer les colonnes incomplètes

Nous pouvons appliquer les actions ci - dessus aux colonnes.Nous avons juste besoin d'utiliser le Code axis=1 Paramètres.Cela signifie que les colonnes d'action ne sont pas des lignes.(Nous l'avons déjà utilisé dans nos exemples axis=0,Parce que si on ne passe pas les paramètres, axis,Par défautaxis=0)

Supprimer une colonne entière comme suit: NA Colonne:

data.dropna(axis=1, how='all')

Les résultats sont les suivants:

img

Supprimer toute colonne contenant une valeur nulle:

data.dropna(axis=1,how='any')

img

Vous pouvez également utiliser la même chose ici que ci - dessus threshold Et subset

5、Types de données normalisés

Spécifiez le type de données de champ lors du chargement de l'ensemble de données

data = pd.read_csv('./data/movie_metadata.csv', dtype={'title_year':str})

C'est ce qu'on dit. Pandas ‘duration’Le type de colonne est un type numérique.Voir les types de colonnes de données chargées

data.info()

Les résultats sont les suivants:

img

object C'est - à - dire que le type de données est un type de chaîne

6、Transformation nécessaire

Les données saisies manuellement peuvent nécessiter certaines transformations nécessaires,Par exemple:

  • Mauvaise typographie
  • L'incohérence des majuscules et des minuscules dans les mots anglais
  • Espace supplémentaire entré

Voir d'abord movie_title Données de colonne

data.movie_title

Les résultats sont les suivants::

img

Tout ce que nous avons dans nos données movie_title En majuscules:

data['movie_title'].str.upper()

Les résultats sont les suivants::

img

La même chose.,Nous pouvons supprimer les espaces laissés à la fin:

data['movie_title'].str.strip()

Les résultats sont les suivants:

img

7、Renommer le nom de colonne

Nous avons besoin d'une réaffectation:

data = data.rename(columns={'title_year':'release_date', 'movie_facebook_likes':'facebook_likes'})

Afficher les noms de colonnes de données renommés

data.info()

Les résultats sont les suivants::

img

8、Enregistrer les résultats

Après nettoyage des données,En général, les résultats sont remis en question. csv Enregistrer le format de,Pour le traitement ultérieur d'autres programmes.Encore une fois,Pandas Fournit une méthode très facile à utiliser:

data.to_csv('./data/cleanfile.csv',encoding='utf-8')

Voir /home/student/data La Table des matières se lit comme suit:,Nouveau enregistré cleanfile.csv Documentation

1587976871858-image-20200414161908697

版权声明
本文为[Lmandcc]所创,转载请带上原文链接,感谢
https://pythonmana.com/2021/10/20211028223047286Y.html

  1. Angry liver half moon! Python learning route + resource summary
  2. 如何用Python编写下列程序
  3. Comment écrire les programmes suivants en python
  4. 熬夜整理了2021年Python最新学习资料,分享给学弟学妹们【大学生必备】
  5. 朋友股票亏惨了,我一怒用Python爬取了证券最新数据
  6. Python爬虫高阶:微店混淆逆向解密
  7. Python爬虫开发学习全教程第二版,爆肝十万字【建议收藏】
  8. 我用Python逆向登录世界上最大的游戏平台,steam加密手段有多高明【内附源码】
  9. 我用Python爬取1000封情书助力室友表白班花,却反转再反转...原来这就是班花的终极秘密!
  10. 我用Python爬取了五千张美女图壁纸,每天一张忘记初恋!
  11. 我Python采集了新榜热门内容,原来这就是别人能成为自媒体大佬的秘密!
  12. 30个Python小游戏,上班摸鱼我能玩一天【内附源码】
  13. 【JS 逆向 AES逆向加密】Python爬虫实战,日子越来越有判头了
  14. python将两个列表进行合并,合并时删除重复元素
  15. J'a i utilisé Python pour accéder aux dernières données sur les titres.
  16. Rester debout tard pour trier les derniers documents d'apprentissage de Python 2021 et les partager avec les étudiants et les jeunes filles [Must for College Students]
  17. python中sklearn版本一直是0.0
  18. La version de sklearn en Python a toujours été 0.0
  19. django 自定义中间件如何忽略部分视图函数
  20. django 自定義中間件如何忽略部分視圖函數
  21. Comment les intergiciels personnalisés Django ignorent certaines fonctions de vue
  22. python map函数的使用
  23. python map函數的使用
  24. Utilisation de la fonction de carte Python
  25. 通过对于Arduino或是Python(包括相关库)的使用,结合自己的日常工作,描述相关知识在工作中起到了什么作用。
  26. 2021最全Python接口测试自动化教程【附学习资料】
  27. Python读取配置文件(config.ini),写入配置文件
  28. Python lit le profil (config.ini), écrit le profil
  29. python 两个数据列表匹配查找
  30. python 兩個數據列錶匹配查找
  31. Recherche de correspondance de deux listes de données Python
  32. python循环结构程序编写题目
  33. 【算法学习】1603. 设计停车系统(java / c / c++ / python / go / rust)
  34. Problèmes de programmation de la structure de la boucle Python
  35. 有人能用python写出代码吗wwww
  36. [apprentissage de l'algorithme] 1603. Conception du système de stationnement (Java / C / C + + / python / go / Rust)
  37. Python中if和else,总是显示无效语法是缩进问题吗?是的话可以详细讲解一下吗?
  38. Python的问题,希望有人帮帮忙
  39. Python的問題,希望有人幫幫忙
  40. J'espère que quelqu'un peut m'aider.
  41. Si et autrement en python, est - ce un problème d'indentation d'afficher toujours une syntaxe invalide? Oui, puis - je vous expliquer en détail?
  42. Quelqu'un peut écrire du Code en python?
  43. Dataframe数据,用pandas.to_excel导出成excel问题
  44. Données du cadre de données, en utilisant pandas.to Exporter Excel vers un problème Excel
  45. 请问这个过期的要怎么弄呀,Python是下载的3.10版本的
  46. 請問這個過期的要怎麼弄呀,Python是下載的3.10版本的
  47. Qu'est - ce qu'on fait de ce vieux python?
  48. Python数据处理转置问题??
  49. Problèmes de transposition du traitement des données python??
  50. 使用python的pdfkit把html转pdf时,echarts无法显示
  51. python利用3维的0,1矩阵再matplotlib中画图
  52. Pycham developing Django project template tutorial
  53. Libraries commonly used in Python data analysis
  54. Python utilise une matrice tridimensionnelle 0, 1 pour redessiner les graphiques dans matplotlib
  55. 预备知识-python核心用法常用数据分析库(上)
  56. 預備知識-python核心用法常用數據分析庫(上)
  57. 我在python上创建了个web静态服务器,把一个前端页面,放进去然后在静态服务器上访问只出现了前段页面的代码,代码运行正常,这是怎么回事
  58. Preliminary Knowledge - Python Core use Common Data Analysis Library (ⅰ)
  59. 预备知识-python核心用法常用数据分析库(上)
  60. J'a i créé un serveur Web statique sur Python, j'ai mis une page frontale, j'ai accédé au Code sur le serveur statique qui n'avait que des pages frontales, et le Code fonctionnait correctement