На этот раз я представлю вам 8 распространенных советов по индексированию панд.
В этой статье представлены 8 библиотек, которые могут заменить pandas. Помимо методов ускорения, они могут снова устранить узкие места в скорости и значительно повысить эффективность обработки данных.
Dask
в более чем Памятьизданные Обеспечивает многоядерное и распределенное параллельное выполнение на множестве.。
существоватьDask
середина,одинDataFrame
даон Большой и параллельныйизDataFrame
,многими меньшими из pandas DataFrames
композиция,Разделить по индексу.
Эти pandas DataFrames
Вычисления, превышающие объем памяти, могут выполняться на диске одной машины или на многих разных машинах в кластере. один Dask DataFrame
Операция запустит все Pandas DataFrames
операция.
Dask-ML
поддерживатьpandas、Numpy、Sklearn、XGBoost、XArray、RAPIDS
и т. д.,Этого вполне достаточно для часто используемой обработки и моделирования анализа.
# Установить даск
pip install dask
# Импортировать данные dataframe
import dask.dataframe as dd
принцип、Пожалуйста, обратитесь к этой статье для использования:Dask от Amway, артефакт анализа больших данных Python!
Modin
даонмногопроцессныйизDataframe
Библиотека,Можно ускоритьPandas
из Рабочий процесс。многопроцессные средства,Если скорость запроса удвоится на многоядерном компьютере, скорость запроса будет удвоена.
Modin
Иметь иpandas
такой жеизAPI,использовать Просто нужносуществоватьimport
импортировать Время от времени меняйте его,Остальные операции точно такие же.
# импортировать modin pandas
import modin.pandas as pd
принцип、Установить、Пожалуйста, обратитесь к этой статье для использования:Что делать, если панда работает медленно? Приходите попробовать Модин
Datatable
даондля обработки таблицданныеиз Python
библиотека.
иpandas
из Очень похоже в использовании,но больше сосредоточен наСкорость и большие данныеизподдерживать。существоватьодиночный узелизна машине,Независимо от того, да читает данные,Также даданные конвертации и другие операции,гораздо быстрее, чемpandas
。
Если данные не распределены, а обрабатываются одним узлом,Когда встречи с Память недостаточно или скорость низкая,Вы также можете попробовать эту библиотеку.
Документация по использованию: https://datatable.readthedocs.io/en/latest/start/quick-start.html.
Polars
даиспользовать Apache Arrow Columnar Format В качестве модели памяти в Rust Чрезвычайно высокая скорость, достигнутая в DataFrames
библиотека.
# Установить polars
pip install polars
# импортировать polars
import polars as pl
Документация по использованию: https://pola-rs.github.io/polars-book/user-guide/index.html.
Vaex
Это также открытый исходный код DataFrame
,Он использует такие технологии, как картирование Памяти, эффективные внеядерные алгоритмы и отложенные вычисления.
Для большого набора данных,Если дисковое пространство может соответствовать набору данных,использоватьVaex
ты можешь это проанализировать,Решите проблему недостаточного Памятьиз.
Его различные функциональные функции также инкапсулированы в виде API-интерфейсов, подобных Pandas, практически без затрат на обучение.
Пожалуйста, обратитесь к этой статье:0.052 Открыть за секунды 100GB Данные, эта библиотека Python с открытым исходным кодом популярна!
Pyspark
да Apache Spark из Python API для обработки больших наборов данных посредством распределенных вычислений.
# Установить
pip install pyspark
# импортировать
from pyspark.sql import SparkSession, functions as f
spark = SparkSession.builder.appName("SimpleApp").getOrCreate()
df = spark.read.option('header', True).csv('../input/yellow-new-yo
потому что Spark имеет преимущество перед Hadoop с точки зрения скорости. Теперь многие предприятия и архитектуры с большими данными предпочитают использовать Spark.
Koalas
дасуществовать Apache Spark понял выше изpandas DataFrame
API делает анализ данных более эффективным.
потому что Koalas
дасуществовать Apache Spark Бежать поверх,Поэтому также необходимо установить Spark
。
# Установить
pip install pyspark
pip install koalas
# импортировать
import databricks.koalas as ks
from pyspark.sql import SparkSession
Документация по использованию: https://koalas.readthedocs.io/en/latest/index.html.
cuDF
даон Python GPU DataFrame
библиотека, основанная на Apache Arrow Столбчатый формат памяти, созданный для манипулирования данными.
cuDF
Предоставить класс pandas из API, поэтому анализ отдел данных тоже да не надо понимать CUDA
Подробности программирования из.
import cudf, io, requests
from io import StringIO
url = "https://github.com/plotly/datasets/raw/master/tips.csv"
content = requests.get(url).content.decode('utf-8')
tips_df = cudf.read_csv(StringIO(content))
tips_df['tip_percentage'] = tips_df['tip'] / tips_df['total_bill'] * 100
print(tips_df.groupby('size').tip_percentage.mean())
Документация по использованию: https://github.com/rapidsai/cudf.
Введение в эту статьюиз 8 индивидуальныйPython
Библиотекапринципдругой,Существуют также различия в среде использования.,Каждый может попробовать это в соответствии со своими потребностями.
но Эти Библиотека В основном занятия проводятсяpandas
изAPI,Таким образом, его использование не требует затрат на обучение.,После настройки среды вы можете приступить к работе.
👉Расширенное руководство по пандам