Que faire si vous obtenez une erreur de mémoire lors de la conversion de PySparkDataFrame en PandasDataFrame

introduction

Lorsque vous souhaitez utiliser les données créées par le DataFrame de Spark dans chaque module Python, vous pouvez utiliser la méthode toPandas () pour les convertir en DataFrame de Pandas, mais une erreur de mémoire se produit souvent à ce moment-là. Par essais et erreurs pour qu'il puisse être stocké dans la mémoire, j'ai résumé ceux qui semblent efficaces.

Il semble y avoir un meilleur moyen, alors si vous le savez, faites-le moi savoir!

manière

Convertir à l'aide de Dask

La conversion par spark est affectée par spark.driver.memory et spark.driver.maxResultSize, mais dans le cas de dask ce n'est pas le cas, il est donc facile d'éviter l'erreur.

Conversion à l'aide de Dask


import dask.dataframe as dd

df.write.parquet(parquet_path)
dask_df = dd.read_parquet(parquet_path)
pandas_df = dask_df.compute()

Changer le type de données

Modifiez le type de données de la variable pour réduire le nombre d'octets.

Changer le type de données


#Par exemple, type int32(4 octets)Type Int8(1 octet)Convertir en
dask_df = dask_dt.astype({k: 'int8' for k in dask_df.dtypes[dask_df.dtypes == 'int32'].index})

Recommended Posts

Que faire si vous obtenez une erreur de mémoire lors de la conversion de PySparkDataFrame en PandasDataFrame
Que faire si vous obtenez une erreur lors du chargement de mnist
Que faire si vous obtenez une erreur de remplacement obligatoire `get_config` lorsque vous essayez de model.save avec Keras
Que faire si vous obtenez une erreur "Aucune version trouvée" sur pipenv
Que faire si vous obtenez une erreur lors de l'installation de python avec pyenv
Que faire si vous obtenez une erreur d'autorisation refusée (clé publique) lorsque vous essayez de tirer sur le hub Git
Que faire lorsqu'une erreur "service inconnu" est renvoyée par le serveur gRPC
Que faire si vous obtenez une erreur OpenSSL lors de l'installation de Python 2 avec pyenv
Que faire si vous obtenez une erreur lors de l'importation de matplotlib en Python (Mac)
Que faire si vous obtenez une erreur d'importation lors de l'importation de matplotlib avec Jupyter
Que faire si vous obtenez l'erreur ʻERR_FEATURE_UNAVAILABLE_ON_PLATFORM` lors de l'utilisation de ts-node-dev sous Linux
Que faire si vous obtenez une erreur en essayant d'envoyer un message dans tasks.loop () immédiatement après le démarrage
Que faire si vous obtenez moins zéro en Python
Que faire si vous obtenez une erreur de décodage Unicode avec l'installation de pip
Que faire si vous obtenez une erreur Impossible de récupérer le lien métallique pour le référentiel avec yum
Que faire si vous obtenez une erreur lors de l'exécution de "certbot renouveler" dans l'environnement CakePHP
Que faire si vous obtenez une erreur non définie lorsque vous essayez d'utiliser pip avec pyenv
Que faire lorsque TypeError se produit au minimum et au maximum de numpy
[Python] Choses à vérifier lorsqu'une erreur de décodage Unicode apparaît dans Django
Que faire lorsque vous souhaitez recevoir des fichiers à distance depuis un client Windows
Que faire si vous obtenez un avertissement "Mauvaise plateforme Python" lors de l'utilisation de Python avec l'EDI NetBeans
Que faire si vous obtenez `locale.Error: unsupported locale setting` lors de l'obtention de la date du jour en Python
Que faire lorsqu'une erreur de suppression se produit lors de la mise à jour de conda
Que faire si vous obtenez "(35, 'Erreur de connexion SSL')" dans pycurl (l'un d'entre eux)
Que faire si Combinaisons devient «couverture inconnue»
Que faire si une erreur 0xC0000005 se produit dans tf.train.start_queue_runners ()
Que faire si on vous dit «Erreur d'importation: impossible d'importer le nom'HTTPSHandler '» lors de la création d'un environnement virtuel à l'aide de virtualenv
Que faire si vous obtenez l'erreur RuntimeError: Python n'est pas installé en tant que framework lorsque vous essayez d'utiliser matplitlib et pylab dans Python 3.3
Que faire si vous recevez une erreur d'appel avec trop d'arguments d'entrée à faire et retourner dans un test de golang
Que faire si vous obtenez l'erreur "Erreur: opencv3: Ne prend pas en charge la construction des wrappers Python 2 et 3" lors de l'installation d'openCV 3
Que faire lorsque swagger-codegen est terminé avec python et Erreur d'importation: aucun module nommé n'apparaît
Que faire lorsque vous obtenez "Je ne peux pas voir le site !!!!"
Que faire si vous obtenez une erreur lors du vagabondage lorsque vous activez public_network ou private_network sur Vagrant + Arch Linux → Installer netctl
Que faire si vous vous fâchez contre les `` déclarations '' doivent être une liste 2D ... dans la flèche matplotlib
Que faire si vous obtenez une erreur indiquant que le compilateur C ne peut pas créer d'exécutables dans configure
Que faire si vous vous mettez en colère si vous n'avez pas libxml / xmlversion.h lors de l'installation de lxml sur CentOS
Que faire si vous vous perdez dans la référence de fichier avec FileNotFoundError
Que faire si vous vous fâchez avec TensorFlow v2 sans l'attribut "app"
Que faire si vous êtes bloqué pendant l'installation d'Anaconda sur Linux
Que faire si une erreur se produit lors de l'importation de numpy avec VScode
Que faire si vous obtenez Impossible de récupérer l'URL 443 avec pip
Que faire lorsque le shell pipenv devient impossible
Que faire si vous obtenez "La session n'a pas pu être ouverte" lors de l'installation de CentOS sur VirtualBox
Que faire si vous obtenez une erreur comme "Qstring" a déjà été défini sur la version 1 en utilisant mne python
Que faire lorsque vous vous fâchez avec "Value Error: unknown local: UTF-8" dans python manage.py syncdb
[Django] Que faire lorsqu'une erreur d'intégrité se produit lors de l'enregistrement des données du site de gestion dans la base de données
Que faire si vous obtenez l'erreur Le script WSGI cible '/ var / www / xxx / xxx.wsgi' ne peut pas être chargé en tant que module python
swapon failed: Que faire si vous vous fâchez contre l'opération non autorisée
Solution lorsque Django ne peut pas charger d'images à partir d'un dossier statique
Que faire si une erreur de codage Unicode se produit dans Sublime Text Python
Que faire si vous obtenez «Python non configuré». Utilisation de PyDev dans Eclipse
Si vous obtenez une longue erreur lors de la tabulation d'un shell interactif avec Anaconda
Que faire si une erreur de version se produit dans le pilote Selenium Chrome
Que faire si une erreur se produit lorsque vous chargez un projet Python créé avec de la poésie dans VS Code
Aucun module nommé Que faire si vous obtenez "libs.resources"
ModuleNotFoundError: No module Que faire si vous obtenez 'sensorflow.contrib'
Que faire lorsque gdal_merge génère un fichier énorme
Que faire si une erreur de décodage Unicode se produit dans pip