Skip to main content

Koalas: pandas API on Apache Spark

Project description

pandas API on Apache Spark
Explore Koalas docs »

Live notebook · Issues · Mailing list
Help Thirsty Koalas Devasted by Recent Fires

The Koalas project makes data scientists more productive when interacting with big data, by implementing the pandas DataFrame API on top of Apache Spark.

pandas is the de facto standard (single-node) DataFrame implementation in Python, while Spark is the de facto standard for big data processing. With this package, you can:

  • Be immediately productive with Spark, with no learning curve, if you are already familiar with pandas.
  • Have a single codebase that works both with pandas (tests, smaller datasets) and with Spark (distributed datasets).

This project is currently in beta and is rapidly evolving, with a bi-weekly release cadence. We would love to have you try it and give us feedback, through our mailing lists or GitHub issues.

Try the Koalas 10 minutes tutorial on a live Jupyter notebook here. The initial launch can take up to several minutes.

Github Actions codecov Documentation Status Latest Release Conda Version Binder

Getting Started

The recommended way of installing Koalas is Conda as below.

conda install koalas -c conda-forge

You can use not only Conda but also multiple ways to install Koalas. See Installation for full instructions to install Koalas.

If you are a Databricks Runtime user, you can install Koalas using the Libraries tab on the cluster UI, or using dbutils in a notebook as below, for the regular Databricks Runtime.

dbutils.library.installPyPI("koalas")
dbutils.library.restartPython()

Note that Koalas requires Databricks Runtime 5.x or above. In the future, we will package Koalas out-of-the-box in both the regular Databricks Runtime and Databricks Runtime for Machine Learning.

Lastly, note that if your PyArrow version is 0.15+ and your PySpark version is lower than 3.0, it is best for you to set ARROW_PRE_0_15_IPC_FORMAT environment variable to 1 manually. Koalas will try its best to set it for you but it is impossible to set it if there is a Spark context already launched.

Now you can turn a pandas DataFrame into a Koalas DataFrame that is API-compliant with the former:

import databricks.koalas as ks
import pandas as pd

pdf = pd.DataFrame({'x':range(3), 'y':['a','b','b'], 'z':['a','b','b']})

# Create a Koalas DataFrame from pandas DataFrame
df = ks.from_pandas(pdf)

# Rename the columns
df.columns = ['x', 'y', 'z1']

# Do some operations in place:
df['x2'] = df.x * df.x

For more details, see Getting Started and Dependencies in the official documentation.

Contributing Guide

See Contributing Guide and Design Principles in the official documentation.

FAQ

See FAQ in the official documentation.

Best Practices

See Best Practices in the official documentation.

Koalas Talks and Blogs

See Koalas Talks and Blogs in the official documentation.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

koalas-0.31.0.tar.gz (269.2 kB view details)

Uploaded Source

Built Distribution

koalas-0.31.0-py3-none-any.whl (926.9 kB view details)

Uploaded Python 3

File details

Details for the file koalas-0.31.0.tar.gz.

File metadata

  • Download URL: koalas-0.31.0.tar.gz
  • Upload date:
  • Size: 269.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2.post20191203 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.7.5

File hashes

Hashes for koalas-0.31.0.tar.gz
Algorithm Hash digest
SHA256 41f939353b8973737a603e70e65386a609f2504b99fff997a4f56eb79f46603c
MD5 a4311e23904148e9b0e5e1cbb846e552
BLAKE2b-256 48393317c5f74b8739da64d671e579df21a5083158fbbe932aaa8c0af7ab2a37

See more details on using hashes here.

File details

Details for the file koalas-0.31.0-py3-none-any.whl.

File metadata

  • Download URL: koalas-0.31.0-py3-none-any.whl
  • Upload date:
  • Size: 926.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2.post20191203 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.7.5

File hashes

Hashes for koalas-0.31.0-py3-none-any.whl
Algorithm Hash digest
SHA256 128be8123679d91fa2668185e6465a0fcde98788e8db207debaf94a5b1fd50ca
MD5 0b55b8b7f298710198206a53bca65299
BLAKE2b-256 a6258d044d21d6464ca99a0eed176acb43a50516ba39b5415e8b36c9a6332830

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page