Fiche compatible avec le code R pour les utilisateurs de Python

Pour ceux qui comprennent le code d'analyse Python, nous avons résumé la correspondance du code R. * Mise à jour de temps en temps (Dans cet article, seul le package de base R est utilisé)

Il y a beaucoup de gens qui demandent: "Comment écrivez-vous en R lorsque vous écrivez en python?"

Conventions de dénomination dans le document

Sauf indication contraire, les alias de nom de module sont les suivants.

python


import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

Image des noms de variables apparaissant ci-dessous.

python


df = pd.DataFrame()

R


df = data.frame()

Comment écrire du code Python en R

Génération de trames de données

pd.DataFrame() Créer un bloc de données

R


data.frame() #Générer un bloc de données vide
data.frame(col1=c(x1, x2, x3), col2=c(y1, y2, y3)) #colonne

pd.read_csv() Lire le fichier CSV (données séparées par des virgules)

R


read.csv(nom de fichier)

pd.read_table() Lire les fichiers TSV et CSV (données délimitées par des tabulations)

R


read.table(nom de fichier)

df.index = [nom de ligne 1, nom de ligne 2, ...]

Réglage du nom de la ligne

R


rownames(df) <- c(Nom de ligne 1,Nom de la ligne 2, ...)
print(rownames(df)) #Peut être obtenu en tant que vecteur en appelant sans substitution

df.columns = [nom de colonne 1, nom de colonne 2, ...]

Paramètre de nom de colonne

R


colnames(df) <- c(Nom de colonne 1,Nom de colonne 2, ...)
print(colnames(df)) #Peut être obtenu en tant que vecteur en appelant sans substitution

Vérifiez le contenu du bloc de données

df.shape Obtenez le nombre de lignes et de colonnes

R


dim(df)

len(df) Obtenez le nombre de lignes

R


ncol(df)

len(df.columns) Obtenez le nombre de colonnes

R


nrow(df)

df.head() Sortie de première ligne

R


head(df) #Vous pouvez également spécifier le nombre de lignes à afficher avec un argument

df.tail() Sortie de la dernière ligne

R


tail(df) #Vous pouvez également spécifier le nombre de lignes à afficher avec un argument

df.info() Afficher les informations sur le nombre et le type de chaque colonne

R


str(df)

df.describe() Sortir les statistiques de base

R


summary(df) #Cependant, std n'est pas sorti

#get std, par exemple:
sds = NULL
for(col in colnames(df)){
  sds <- c(sds, sd(df[, col]))
}
names(sds) <- colnames(df)

df.isna() Vérifier les valeurs manquantes (NA)

R


is.na(df)

df.isna().sum()

Vérifiez le nombre de valeurs manquantes (NA) pour chaque colonne

R


colSums(is.na(df))
# summary(df)Mais le nombre de NA est également affiché afin que vous puissiez le vérifier

df[df.isna().any(axis=1)] Extraire les lignes qui ont au moins une valeur manquante (NA)

R


df[!complete.cases(df), ]

df.col.unique() Renvoie une valeur unique (sans chevauchement) qui apparaît dans une colonne

R


unique(df$col)

df.col.value_counts() Renvoie le nombre d'apparitions d'une valeur qui apparaît dans une colonne

R


table(df$col)

Extraction de données

df.iloc[x1:x2, y1:y2] Spécifiez la plage en utilisant le numéro de ligne et le numéro de colonne

R


df[x1:x2, y1:y2] #Notez que R a un début d'index de 1

df.iloc[[x1, x2, ...], [y1, y2, ...]] Spécifiez une liste à l'aide de numéros de ligne et de colonne

R


df[c(x1, x2, ...), c(y1, y2, ...)]

df.loc [nom de ligne 1: nom de ligne 2, nom de colonne 1: nom de colonne 2]

Spécifiez la plage à l'aide du nom de ligne et du nom de colonne

R


#Cela ne semble pas exister clairement, donc si vous le faites,
#Obtenez la position (numéro) du nom de ligne et du nom de colonne spécifiés et utilisez-le pour la spécification de plage
x1 <- which(rownames(df) ==Nom de ligne 1)
x2 <- which(rownames(df) ==Nom de la ligne 2)
y1 <- which(colnames(df) ==Nom de colonne 1)
y2 <- which(colnames(df) ==Nom de colonne 2)
df[x1:x2, y1:y2]

df.loc [[nom de ligne 1, nom de ligne 2, ...], [nom de colonne 1, nom de colonne 2, ...]]

Spécifiez une liste à l'aide des noms de ligne et de colonne

R


df[c(Nom de ligne 1,Nom de la ligne 2, ...), c(Nom de colonne 1,Nom de colonne 2, ...)]

df[df.col == x] Extraire les lignes qui correspondent aux conditions

R


df[df$col == x, ]
#Ou
subset(df, col == x)

Traitement de l'information

df[new_col] = x Ajouter une nouvelle colonne au bloc de données

R


df[, new_col] <- x

df.drop() Supprimer des lignes et des colonnes

R


#Vous pouvez supprimer en sélectionnant la ligne ou la colonne que vous souhaitez supprimer et en attribuant NULL.
df[c(x1, x2), ] <- NULL #Supprimer la ligne
df[, c(y1, y2)] <- NULL #Supprimer la colonne

#En utilisant la propriété de renvoyer une matrice excluant ce nombre lorsque l'index est défini sur une valeur négative, il peut également être écrit comme suit.
df <- df[c(-1, -2), ] #Supprimer la ligne
df <- df[, c(-1, -2)] #Supprimer la colonne

df.fillna(x) Remplissez les valeurs manquantes (NA)

R


df[is.na(df)] <- x

df.dropna() Supprimer les lignes contenant des valeurs manquantes (NA)

R


na.omit(df)

df.apply(func) Appliquez la fonction func à chaque élément un par un

R


sapply(df, FUN =func)

df.col.apply(func) Appliquer la fonction func à chaque élément de la colonne spécifiée

R


sapply(df$x, FUN =func)

df.T Transposer la matrice

R


t(df)

pd.to_datetime() Convertir en type de date

R


as.Date(df$col) #Date uniquement (par exemple'2020-01-01')

Agrégation de données

df.max()、 df.min() Trouvez les valeurs maximum et minimum pour chaque colonne

R


sapply(df, FUN =max)
sapply(df, FUN =min)

#Un traitement équivalent est possible avec apply
apply(df, MARGIN=2, FUN =max) #MARGIN=Si 1, la fonction (FUN) est appliquée ligne par ligne.
apply(df, MARGIN=2, FUN =min) #max(df)Si, trouvez la valeur maximale parmi tous les éléments (idem pour min)

df.groupby([x1, x2, ...]).agg(func) Grouper et agréger

R


aggregate(. ~ x1+x2, df, FUN=sum) #「."Regroupe toutes les colonnes
aggregate(x ~ x1+x2, df, FUN=sum) #Effectue le traitement d'agrégation pour la colonne spécifiée par "x"

pd.pivot_table(df, index, columns, values) Pas dans le package de base. peut être.

Recommended Posts

Fiche compatible avec le code R pour les utilisateurs de Python
Mémo de code personnel Python
[Python] Exemple de code pour la grammaire Python
Aide-mémoire Python (pour les expérimentés C ++)
[python] Obtenir la chronologie Twitter pour plusieurs utilisateurs
python> guide de codage> PEP 0008 --Style Guide for Python Code
Fiche de triche AtCoder en python (pour moi-même)
30/10/2016 else pour Python3> pour:
python [pour moi]
code de caractère python
[Mise à jour] Aide-mémoire de la syntaxe Python pour la boutique Java
Code pour vérifier le fonctionnement de Python Matplot lib
Paramètres de codage Python avec Visual Studio Code
Création d'un environnement de travail Docker R et Python
Exemple de code spécifique pour travailler avec SQLite3 en Python
Paramètres VS Code pour le développement en Python avec achèvement
Faire en sorte que Visual Studio Code complète automatiquement la bibliothèque externe de Python
Expose settings.json pour un codage Python efficace avec VS Code
[Python] Code pour mesurer la lumière ambiante RVB de l'APDS9960
Code python de la méthode k-means super simple
À propos de Python for loop
Réécrire le code Python2 en Python3 (2to3)
infomap code de dessin Python
Avant d'écrire du code Python
À propos de Python, pour ~ (plage)
Aide-mémoire Python3 (basique)
Manuel python pour les débutants
Fiche technique PySpark [Python]
Refactoring des outils utilisables avec Python
Feuille de triche de tri Python
Toolchain pour Python pour Android
OpenCV pour les débutants en Python
Installez Python (pour Windows)
[Python] pour une erreur d'instruction
Maintenance de l'environnement Python pour les projets
Insérez l'instruction Import requise pour la complétion du code Python dans Neovim
Activer l'environnement virtuel Python de virtualenv pour Visual Studio Code
Lequel dois-je étudier, R ou Python, pour l'analyse des données?
Je viens d'écrire le matériel original pour l'exemple de code python
Code Python pour l'écriture de données CSV dans le stockage d'objets DSX
[Python] Créer un écran pour le code d'état HTTP 403/404/500 avec Django