[PYTHON] Expliquez en détail le code magique des éléments de table IQ Bot

Lors de l'écriture d'un script Python pour un élément de table dans IQ Bot, il y a du code qui doit être inclus au début et à la fin.

Comme je l'ai écrit dans l'article ici, c'est le code suivant.

Comment écrire un script Python pour un élément de table


#Code à saisir lors de l'utilisation de la table (en premier)
import pandas as pd
df = pd.DataFrame(table_values)

#Mettez le code que vous souhaitez traiter dans la partie centrale

#Code à saisir lors de l'utilisation de la table (dernier)
table_values = df.to_dict()

À un junior mignon qui utilise IQ Bot dans l'entreprise On m'a demandé: "Que fait ce code?" J'ai fait de mon mieux pour répondre.

Importez la bibliothèque (pandas)!

Tout d'abord, le langage de programmation s'appelle "bibliothèque". Il existe quelque chose comme un package qui rassemble des instructions et des fonctions pour faciliter le traitement dans un certain domaine.

Python a une bibliothèque appelée pandas Ce pandas est une bibliothèque qui facilite la gestion des tables et des tableaux de données.

Pour utiliser une bibliothèque, vous devez d'abord l'importer.

La première ligne, ʻimport pandas as pd`, est le processus pour cela.

La première ligne du script magique


import pandas as pd      

#Signification: Importer des pandas.
#Et rendez le contenu de ces pandas disponible sous le nom pd dans le code que je suis sur le point d'écrire.

Convertissez en DataFrame!

Les informations de table lues par IQ Bot depuis le formulaire étaient entièrement contenues dans une variable appelée table_values. (Si vous ne comprenez pas cette histoire, voir ici)

Le contenu des table_values est difficile à gérer tel quel, donc Convertissez en un format appelé DataFrame adapté à la gestion des pandas.

Ensuite, les données converties sont stockées dans une variable nommée «df».

La deuxième ligne du script magique


df = pd.DataFrame(table_values)    

#Signification: table_Convertissez le contenu des valeurs au format pandas DataFrame et placez-le dans une variable appelée df.

Ici, pd. dans pd.DataFrame signifie pandas.

Il est possible de l'abréger en pd. au lieu d'écrire pandas. C'est parce que j'ai ajouté ʻas pd à ʻimport pandas dans la première ligne du code magique.

Que se passe-t-il lorsque je convertis en DataFrame?

En traitant les première et deuxième lignes, à partir de maintenant,

Le contenu entier contenu dans table_values est df, Vous pourrez y gérer les valeurs d'une colonne spécifique sous la forme de df ['nom de colonne'].

Remettez le format DataFrame au format d'origine!

Dans le processus final, les données précédemment stockées dans la variable df au format DataFrame sont Restaure le format dans lequel IQ Bot contenait à l'origine valeur_table.

Le format original de table_value est de type dictionnaire, je reviendrai donc à ce format.

La fin du script magique


table_values = df.to_dict()

#Signification: Convertir le contenu de df en type et table dict_Mettez-le en valeurs.

De cette manière, le résultat traité est transmis à IQ Bot.

Nom important (supplément sur le nom)

Ajouter ʻas pd` lors de l'importation de Pandas, Le nom de la variable qui stocke le DataFrame est «df».

Ce n'est pas une règle absolue, mais il vaut mieux le faire.

C'est parce que l'écrasante majorité des gens écrivent du code de cette façon.

La plupart des articles de commentaires sur Python et panda écrivent du code basé sur cette prémisse de dénomination.

Par conséquent, il est préférable de faire correspondre le code lors de la création d'IQ Bot. Il est plus facile de trouver des explications lorsque vous tombez sur quelque chose.

Même si vous écrivez ce qui suit, cela fonctionnera si vous dites simplement si le code fonctionne, Je ne le recommande pas beaucoup.

Comment écrire un script Python pour un élément de table


#Code à saisir lors de l'utilisation de la table (en premier)
import pandas as hoge1
hoge2 = hoge1.DataFrame(table_values)

#Code à saisir lors de l'utilisation de la table (dernier)
table_values = hoge2.to_dict()

Résumé

Recommended Posts

Expliquez en détail le code magique des éléments de table IQ Bot
Code de test pour vérifier les liens brisés dans la page
Expliquez le code de Tensorflow_in_ROS
Logique personnalisée IQ Bot: supprimez les n dernières lignes du tableau
for, continue, break Expliquer le flux du traitement itératif dans Python3-Part 1
Je veux expliquer en détail la classe abstraite (ABCmeta) de Python