(Remarque) Statistiques de base sur Python et Pandas sur IBM DSX

J'ai essayé Python et Pandas

Notez le script que je pensais toujours exécuter lors de l'analyse des données avec Python à l'avenir. Fonctionne sur Python2 avec Spark 2.0 dans l'environnement d'IBM Data Science Experience. (Cette fois, ce n'est pas forcément Spark du tout) Étant donné que le nombre de champs est assez important dans le travail d'analyse réel, j'ai essayé de penser à une méthode qui ne nécessite pas de coder le nom du champ (nom de la colonne) dans le script autant que possible afin qu'il puisse être analysé efficacement. Essayez l'expansion des colonnes et le marquage des données de catégorie, qui est une fonction équivalente à la «réorganisation des champs» de SPSS Modeler, qui est nécessaire pour la préparation des données de l'apprentissage automatique! Je n'ai pas essayé la valeur manquante liée cette fois, alors je vais saisir l'occasion suivante. (Les données ont déjà été saisies dans df_wiskey utilisé dans cet article)

#Tout d'abord, vérifiez le contenu du DataFrame
df_wiskey.head(10)
Screen Shot 2016-11-15 at 18.17.19.png
#Ensuite, vérifiez les attributs de la colonne (champ) (cette fois, procédez avec un w assez approprié)
df_wiskey.dtypes
Screen Shot 2016-11-15 at 18.17.37.png
#Statistiques de base des données numériques
df_wiskey.describe()
Screen Shot 2016-11-15 at 18.17.48.png
#Représenter graphiquement la distribution des données numériques

#Mettez matplotlib en mode inline
%matplotlib inline

import matplotlib
import matplotlib.pyplot as plt

for x in df_wiskey.columns[df_wiskey.dtypes == 'float64']:
    xdesc = df_wiskey[x].describe()
    plt.hist(df_wiskey[x] , range=(xdesc['min'], xdesc['max']) )
    plt.title( x )
    plt.show()
Screen Shot 2016-11-15 at 18.18.03.png Screen Shot 2016-11-15 at 18.18.11.png Screen Shot 2016-11-15 at 18.18.20.png
#Donnees numeriques,Corrélation entre deux variables
df_wiskey.corr()
Screen Shot 2016-11-15 at 18.18.29.png
#Données autres que numériques
df_wiskey[df_wiskey.columns[df_wiskey.dtypes == 'object']].head(5) 
Screen Shot 2016-11-15 at 18.18.35.png
#Fréquence d'apparition des données agrégées pour les données non numériques (supposée être une valeur de catégorie)
for x in df_wiskey.columns[df_wiskey.dtypes == 'object']:
    valcal = df_wiskey[x].value_counts();
    print '-- '+x+' -----------------------------------'
    print valcal.head(10)
    print '--------------------------------------------'
Screen Shot 2016-11-15 at 18.18.43.png Screen Shot 2016-11-15 at 18.18.54.png Screen Shot 2016-11-15 at 18.19.01.png
#Tableau croisé entre les données de catégorie--Simple mais l'affichage semble étrange
crosstab( df_wiskey.Country , df_wiskey.Category)
Screen Shot 2016-11-15 at 18.19.11.png
#Carte de chaleur par pays vs catégorie(Bourbon se concentre sur les USA, le Single Malt couvre la plupart des pays)
df_wiskey_pd = pivot_table( data=df_wiskey , columns='Country' , index='Category' , values='Name' , aggfunc='count')
plt.imshow(df_wiskey_pd , aspect= 'auto' ,interpolation='nearest')
plt.colorbar()
plt.xticks(range(df_wiskey_pd.shape[1]), df_wiskey_pd.columns , rotation='vertical')
plt.yticks(range(df_wiskey_pd.shape[0]), df_wiskey_pd.index)
plt.show()
Screen Shot 2016-11-15 at 18.19.19.png
#Fieldize les données de la colonne Pays pour l'entrée dans la technique de modélisation et T/Définir F
# (Le nom de la colonne est Pays_XXXXXXXX) 
for x in df_wiskey.groupby('Country').count().index : 
    x1 = 'Country_' + x  
    df_wiskey[x1]  = 'F'
    #Si le pays défini dans la colonne Pays est xxxxx, alors Pays_Changer en T pour XXXXXXXXX
    df_wiskey.loc[df_wiskey[x1][df_wiskey.Country == x].index , x1] = 'T'
#Afficher uniquement les 3 premières lignes
df_wiskey.head(3)
Screen Shot 2016-11-15 at 18.20.42.png

Postscript

Les blocs-notes Data Scientist Experience peuvent être assez faciles à utiliser: sourire: <Capture d'écran>

Notebook_Python2 copy.png

Recommended Posts

(Remarque) Statistiques de base sur Python et Pandas sur IBM DSX
1. Statistiques apprises avec Python 1-1. Statistiques de base (Pandas)
Installer des pandas sur python2.6
python basic ② sous windows
Python Basic --Pandas, Numpy-
Application Python: Pandas Partie 1: Basique
Remarque: Python
Note de Python
[Note] Construisez un environnement Python sur le serveur de location "CORESERVER"
Installez Python3, numpy, pandas, matplotlib, etc. sous Windows
Remarque sur l'encodage lorsque LANG = C en Python
[Note] Installation de Python 3.6 + α sur Windows et RHEL
Créer un environnement d'exécution Python sur IBM i
Fonctionnement de base de Python Pandas Series et Dataframe (1)
Remarque: décorateur Python
Note de programmation Python
[Python] Note d'apprentissage 1
Mes pandas (Python)
Statistiques avec python
Python sur Windows
twitter avec python3
Note d'apprentissage Python_004
Écriture de base Python
python sur mac
Note d'apprentissage Python_003
Grammaire de base Python3
Python sur Windbg
RF Python Basic_02
Note du débutant Python
mémo pandas python
[Note] les pandas se désempilent
Prenez note de la liste des utilisations de base de Pandas
Essayez les opérations de base sur Pandas DataFrame sur Jupyter Notebook
Hit API REST de Watson à partir de Python avec IBM Bluemix
Installation de Python 3 sur Mac et vérification du fonctionnement de base Partie 1
Remarques sur l'accélération du code Python avec Numba
Version errante de Python 3 sur le serveur de location de Sakura (Remarque)
Remarques sur l'écriture des fichiers de configuration pour Python Remarque: configparser