Skip to content

Commit

Permalink
Update references
Browse files Browse the repository at this point in the history
  • Loading branch information
stinodego committed Nov 4, 2023
1 parent dfe7885 commit 489da60
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 17 deletions.
9 changes: 0 additions & 9 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,15 +32,6 @@ Polars is a highly performant DataFrame library for manipulating structured data
- **Parallel**: Polars fully utilises the power of your machine by dividing the workload among the available CPU cores without any additional configuration.
- **Vectorized Query Engine**: Polars uses [Apache Arrow](https://arrow.apache.org/), a columnar data format, to process your queries in a vectorized manner. It uses [SIMD](https://en.wikipedia.org/wiki/Single_instruction,_multiple_data) to optimize CPU usage.

## About this guide

The Polars user guide is intended to live alongside the API documentation. Its purpose is to explain (new) users how to use Polars and to provide meaningful examples. The guide is split into two parts:

- [Getting started](user-guide/basics/index.md): A 10 minute helicopter view of the library and its primary function.
- [User guide](user-guide/index.md): A detailed explanation of how the library is setup and how to use it most effectively.

If you are looking for details on a specific level / object, it is probably best to go the API documentation: [Python](https://pola-rs.github.io/polars/py-polars/html/reference/index.html) | [Rust](https://docs.rs/polars/latest/polars/).

## Performance :rocket: :rocket:

Polars is very fast, and in fact is one of the best performing solutions available.
Expand Down
8 changes: 5 additions & 3 deletions docs/user-guide/basics/index.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
# Introduction

This getting started guide is written for new users of Polars. The goal is to provide a quick overview of the most common functionality. For a more detailed explanation, please go to the [User Guide](../index.md)
This chapter is intended for new Polars users.
The goal is to provide a quick overview of the most common functionality.
Feel free to skip ahead to the [next chapter](../concepts/data-types.md) to dive into the details.

!!! rust "Rust Users Only"

Due to historical reasons the eager API in Rust is outdated. In the future we would like to redesign it as a small wrapper around the lazy API (as is the design in Python / NodeJS). In the examples we will use the lazy API instead with `.lazy()` and `.collect()`. For now you can ignore these two functions. If you want to know more about the lazy and eager API go [here](../concepts/lazy-vs-eager.md).
Due to historical reasons, the eager API in Rust is outdated. In the future, we would like to redesign it as a small wrapper around the lazy API (as is the design in Python / NodeJS). In the examples, we will use the lazy API instead with `.lazy()` and `.collect()`. For now you can ignore these two functions. If you want to know more about the lazy and eager API, go [here](../concepts/lazy-vs-eager.md).

To enable the Lazy API ensure you have the feature flag `lazy` configured when installing Polars
```
Expand All @@ -13,4 +15,4 @@ This getting started guide is written for new users of Polars. The goal is to pr
polars = { version = "x", features = ["lazy", ...]}
```

Because of the ownership ruling in Rust we can not reuse the same `DataFrame` multiple times in the examples. For simplicity reasons we call `clone()` to overcome this issue. Note that this does not duplicate the data but just increments a pointer (`Arc`).
Because of the ownership ruling in Rust, we can not reuse the same `DataFrame` multiple times in the examples. For simplicity reasons we call `clone()` to overcome this issue. Note that this does not duplicate the data but just increments a pointer (`Arc`).
12 changes: 7 additions & 5 deletions docs/user-guide/index.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
# Introduction

This User Guide is an introduction to the [Polars DataFrame library](https://github.com/pola-rs/polars). Its goal is to introduce you to Polars by going through examples and comparing it to other
solutions. Some design choices are introduced here. The guide will also introduce you to optimal usage of Polars.
This user guide is an introduction to the [Polars DataFrame library](https://github.com/pola-rs/polars).
Its goal is to introduce you to Polars by going through examples and comparing it to other solutions.
Some design choices are introduced here. The guide will also introduce you to optimal usage of Polars.

Even though Polars is completely written in [Rust](https://www.rust-lang.org/) (no runtime overhead!) and uses [Arrow](https://arrow.apache.org/) -- the
[native arrow2 Rust implementation](https://github.com/jorgecarleitao/arrow2) -- as its foundation, the examples presented in this guide will be mostly using its higher-level language
bindings. Higher-level bindings only serve as a thin wrapper for functionality implemented in the core library.
The Polars user guide is intended to live alongside the API documentation ([Python](https://pola-rs.github.io/polars/py-polars/html/reference/index.html) / [Rust](https://docs.rs/polars/latest/polars/)), which offers detailed descriptions of specific objects and functions.

Even though Polars is completely written in [Rust](https://www.rust-lang.org/) (no runtime overhead!) and uses [Arrow](https://arrow.apache.org/) -- the [native arrow2 Rust implementation](https://github.com/jorgecarleitao/arrow2) -- as its foundation, the examples presented in this guide will be mostly using its higher-level language bindings.
Higher-level bindings only serve as a thin wrapper for functionality implemented in the core library.

For [pandas](https://pandas.pydata.org/) users, our [Python package](https://pypi.org/project/polars/) will offer the easiest way to get started with Polars.

Expand Down

0 comments on commit 489da60

Please sign in to comment.