{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "Hi, this notebook will show you almost all the columns operation availables in Optimus. For row operation, IO, ML and DL please go to the examples folder in the repo" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "%load_ext autoreload\n", "%autoreload 2" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import sys" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "sys.path.append(\"..\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Columns Operations\n", "\n", "In this notebook you can see a detailed overview ok all the columns operations available in Optimus. You can access the operation via df.cols." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\Users\\argenisleon\\Anaconda3\\lib\\site-packages\\socks.py:58: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working\n", " from collections import Callable\n", "\n", " You are using PySparkling of version 2.4.10, but your PySpark is of\n", " version 2.3.1. Please make sure Spark and PySparkling versions are compatible. \n", "`formatargspec` is deprecated since Python 3.5. Use `signature` and the `Signature` object directly\n" ] } ], "source": [ "from optimus import Optimus" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "# Create optimus\n", "op = Optimus()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Create dataframe" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from pyspark.sql.types import StringType, IntegerType, ArrayType\n", "\n", "df = op.create.df(\n", " [\n", " (\"words\", \"str\", True),\n", " (\"num\", \"int\", True),\n", " (\"animals\", \"str\", True),\n", " (\"thing\", StringType(), True),\n", " (\"two strings\", StringType(), True),\n", " (\"filter\", StringType(), True),\n", " (\"num 2\", \"string\", True),\n", " (\"col_array\", ArrayType(StringType()), True),\n", " (\"col_int\", ArrayType(IntegerType()), True)\n", "\n", " ]\n", " ,\n", " [\n", " (\" I like fish \", 1, \"dog\", \"housé\", \"cat-car\", \"a\", \"1\", [\"baby\", \"sorry\"], [1, 2, 3]),\n", " (\" zombies\", 2, \"cat\", \"tv\", \"dog-tv\", \"b\", \"2\", [\"baby 1\", \"sorry 1\"], [3, 4]),\n", " (\"simpsons cat lady\", 2, \"frog\", \"table\", \"eagle-tv-plus\", \"1\", \"3\", [\"baby 2\", \"sorry 2\"], [5, 6, 7]),\n", " (None, 3, \"eagle\", \"glass\", \"lion-pc\", \"c\", \"4\", [\"baby 3\", \"sorry 3\"], [7, 8])\n", " ])\n", "\n", "df.table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Create Columns\n", "### Spark\n", "* You can not create multiple columns at the same time\n", "* You need to use the lit function. lit???\n", "\n", "### Pandas\n", "* Assing function seems to do the job https://stackoverflow.com/questions/12555323/adding-new-column-to-existing-dataframe-in-python-pandas\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a column with a constant value" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", " not nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df = df.cols.append(\"new_col_1\", 1)\n", "df.table()" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", " not nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Append 2 or multiples dataframes columns like" ] }, { "cell_type": "code", "execution_count": 79, "metadata": {}, "outputs": [], "source": [ "df_col = op.create.df(\n", " [\n", " (\"new_col\", \"str\", True),\n", " \n", "\n", " ],[\n", " (\"q\"),(\"w\"), (\"e\"), (\"r\"),\n", "\n", " ])" ] }, { "cell_type": "code", "execution_count": 87, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "run profiler\n", "send to queue\n", "\n", "run profiler\n", "send to queue\n", ".select at 0x000002335A5F1C80>\n", "run profiler\n", "send to queue\n", ".count at 0x000002335A7611E0>\n" ] }, { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 11 columns
\n", "
200 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col
\n", "
11 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
q\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
r\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
e\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
w\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 11 columns
\n", "
200 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.append(df_col).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create multiple columns with a constant value" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 12 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
new_col_2
\n", "
11 (double)
\n", "
\n", " \n", "
\n", "
\n", "
new_col_3
\n", "
12 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
2.22
\n", "
\n", "
3
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
2.22
\n", "
\n", "
3
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
2.22
\n", "
\n", "
3
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "
2.22
\n", "
\n", "
3
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 12 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from pyspark.sql.functions import *\n", "\n", "df.cols.append([\n", " (\"new_col_2\", 2.22),\n", " (\"new_col_3\", lit(3))\n", "]).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create multiple columns with a constant string, a new column with existing columns value and an array" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "df.cols.append([\n", " (\"new_col_4\", \"test\"),\n", " (\"new_col_5\", df['num'] * 2),\n", " (\"new_col_6\", [1, 2, 3])\n", "]).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Select columns\n", "### Spark\n", "* You can not select columns by string and index at the same time\n", "\n", "### Pandas\n", "* You can not select columns by string and index at the same time" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 4 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 4 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.table()\n", "columns = [\"words\", 1, \"animals\", 3]\n", "df.cols.select(columns).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Select columns with a Regex" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 3 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
num
\n", "
1 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
3 (int)
\n", "
\n", " \n", "
\n", "
\n", "
1
\n", "
\n", "
1
\n", "
\n", "
1
\n", "
\n", "
2
\n", "
\n", "
2
\n", "
\n", "
1
\n", "
\n", "
2
\n", "
\n", "
3
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
4
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 3 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.select(\"n.*\", regex=True).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Select all the columns of type string" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['col_int', 'num', 'new_col_1', 'col_array'] column(s) was not processed because is not ['str']\n" ] }, { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 6 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
cat-car
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
a
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
dog-tv
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
b
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
3
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
4
\n", "
\n", "
lion-pc
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
c
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 6 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.select(\"*\", data_type=\"str\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Rename Column\n", "### Spark\n", "You can not rename multiple columns using Spark Vanilla API\n", "\n", "\n", "### Pandas\n", "* Almost the same behavior https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.rename.html" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
number
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.rename('num', 'number').table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Rename multiple columns and uppercase all the columns" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
WORDS
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
NUM
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
ANIMALS
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
THING
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
TWO STRINGS
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
FILTER
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
NUM 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
COL_ARRAY
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
COL_INT
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
NEW_COL_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.rename([('num', 'number'), (\"animals\", \"gods\")], str.upper).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Convert to lower case" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.rename(str.lower).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Convert to uppercase" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
WORDS
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
NUM
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
ANIMALS
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
THING
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
TWO STRINGS
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
FILTER
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
NUM 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
COL_ARRAY
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
COL_INT
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
NEW_COL_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.rename(str.upper).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Cast a columns\n", "\n", "This is a opinionated way to handle column casting. \n", "One of the first thing that every data cleaning process need to acomplish is define a data dictionary.\n", "Because of that we prefer to create a tuple like this:\n", "\n", "df.cols().cast(\n", "[(\"words\",\"str\"),\n", "(\"num\",\"int\"),\n", "(\"animals\",\"float\"),\n", "(\"thing\",\"str\")]\n", ")\n", "\n", "### Spark\n", "* Can not cast multiple columns\n", "\n", "### Pandas\n", "\n", "with astype()\n", "https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.astype.html" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[('words', 'string'),\n", " ('num', 'string'),\n", " ('animals', 'string'),\n", " ('thing', 'string'),\n", " ('two strings', 'string'),\n", " ('filter', 'string'),\n", " ('num 2', 'int'),\n", " ('col_array', 'array'),\n", " ('col_int', 'array')]" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.cols.cast(columns=[(\"num\", \"string\"), (\"num 2\", \"integer\")]).dtypes" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Cast a column to string" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[('words', 'string'),\n", " ('num', 'string'),\n", " ('animals', 'string'),\n", " ('thing', 'string'),\n", " ('two strings', 'string'),\n", " ('filter', 'string'),\n", " ('num 2', 'string'),\n", " ('col_array', 'array'),\n", " ('col_int', 'array'),\n", " ('new_col_1', 'int')]" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.cols.cast(\"num\", \"string\").dtypes" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Cast all columns to string" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[('words', 'string'),\n", " ('num', 'string'),\n", " ('animals', 'string'),\n", " ('thing', 'string'),\n", " ('two strings', 'string'),\n", " ('filter', 'string'),\n", " ('num 2', 'string'),\n", " ('col_array', 'string'),\n", " ('col_int', 'string'),\n", " ('new_col_1', 'string')]" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.cols.cast(\"*\", \"string\").dtypes" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Cast a column to Vectors" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DataFrame[words: string, num: int, animals: string, thing: string, two strings: string, filter: string, num 2: string, col_array: array, col_int: vector, new_col_1: int]" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from pyspark.ml.linalg import Vectors\n", "\n", "df.cols.cast(\"col_int\", Vectors)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Keep columns\n", "### Spark\n", "* You can you df.select() to get the columns you want\n", "\n", "### Pandas\n", "* Via drop()\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from pyspark.sql.functions import *" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "df.withColumn(\"num\", col(\"num\").cast(StringType()))" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 1 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
num
\n", "
1 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1
\n", "
\n", "
2
\n", "
\n", "
2
\n", "
\n", "
3
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 1 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.table()\n", "df.cols.keep(\"num\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Move columns\n", "### Spark\n", "Do not exist in spark\n", "\n", "### Pandas\n", "Do not exist in pandas" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
num
\n", "
1 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
words
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
None
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.move(\"words\", \"after\", \"thing\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Sorting Columns\n", "### Spark\n", "You can not sort columns using Spark Vanilla API \n", "\n", "### Pandas\n", "df.reindex_axis(sorted(df.columns), axis=1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Sort in Alphabetical order" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
animals
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
2 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
3 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
5 (int)
\n", "
\n", " \n", "
\n", "
\n", "
num
\n", "
6 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
8 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
9 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
words
\n", "
10 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
dog
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
1
\n", "
\n", "
1
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
cat
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
b
\n", "
\n", "
1
\n", "
\n", "
2
\n", "
\n", "
2
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
frog
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
1
\n", "
\n", "
2
\n", "
\n", "
3
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
eagle
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
c
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
4
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
None
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.sort().table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Sort in Reverse Alphabetical order" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
5 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
6 (int)
\n", "
\n", " \n", "
\n", "
\n", "
filter
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
8 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
9 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
10 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
cat-car
\n", "
\n", "
housé
\n", "
\n", "
1
\n", "
\n", "
1
\n", "
\n", "
1
\n", "
\n", "
a
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
dog
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
dog-tv
\n", "
\n", "
tv
\n", "
\n", "
2
\n", "
\n", "
2
\n", "
\n", "
1
\n", "
\n", "
b
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
cat
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
table
\n", "
\n", "
3
\n", "
\n", "
2
\n", "
\n", "
1
\n", "
\n", "
1
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
frog
\n", "
\n", "
None
\n", "
\n", "
lion-pc
\n", "
\n", "
glass
\n", "
\n", "
4
\n", "
\n", "
3
\n", "
\n", "
1
\n", "
\n", "
c
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
eagle
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.sort(order=\"desc\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Drop columns\n", "### Spark \n", "* You can not delete multiple colums\n", "\n", "### Pandas\n", "* Almost the same as pandas\n", "https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.drop.html" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Drop one columns" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
7 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
8 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
9 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df2 = df.cols.drop(\"num\")\n", "df2.table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Drop multiple columns" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 8 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
animals
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
6 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
7 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
8 (int)
\n", "
\n", " \n", "
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 8 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df2 = df.cols.drop([\"num\", \"words\"])\n", "df2.table()" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Chaining\n", "\n", ".cols y .rows attributes are used to organize and encapsulate `optimus` functionality apart from Apache Spark Dataframe API.\n", "\n", "At the same time it can be helpfull when you look at the code because every line is self explained.\n", "\n", "The past transformations were done step by step, but this can be achieved by chaining all operations into one line of code, like the cell below. This way is much more efficient and scalable because it uses all optimization issues from the lazy evaluation approach." ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 3 of 3 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
two strings
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_2
\n", "
4 (string)
\n", "
\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
5 (int)
\n", "
\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
7 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
9 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
cat-car
\n", "
\n", "
housé
\n", "
\n", "
1
\n", "
\n", "
spongebob
\n", "
\n", "
1
\n", "
\n", "
a
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
dog
\n", "
\n", "
dog-tv
\n", "
\n", "
tv
\n", "
\n", "
2
\n", "
\n", "
spongebob
\n", "
\n", "
1
\n", "
\n", "
b
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
cat
\n", "
\n", "
lion-pc
\n", "
\n", "
glass
\n", "
\n", "
4
\n", "
\n", "
spongebob
\n", "
\n", "
1
\n", "
\n", "
c
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
eagle
\n", "
\n", "\n", "\n", "
Viewing 3 of 3 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.table()\n", "df \\\n", " .cols.rename([('num', 'number')]) \\\n", " .cols.drop([\"number\", \"words\"]) \\\n", " .withColumn(\"new_col_2\", lit(\"spongebob\")) \\\n", " .cols.append(\"new_col_1\", 1) \\\n", " .cols.sort(order=\"desc\") \\\n", " .rows.drop(df[\"num 2\"] == 3) \\\n", " .table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Unnest Columns\n", "\n", "With unnest you can convert one column into multiple ones. it can hadle string, array and vectors\n", "\n", "### Spark\n", "Can split strings with split()\n", "\n", "### Pandas\n", "via str.split()" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 13 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
two strings_0
\n", "
11 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings_1
\n", "
12 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings_2
\n", "
13 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
cat
\n", "
\n", "
car
\n", "
\n", "
None
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
tv
\n", "
\n", "
None
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
eagle
\n", "
\n", "
tv
\n", "
\n", "
plus
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "
lion
\n", "
\n", "
pc
\n", "
\n", "
None
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 13 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.table()\n", "df.cols.unnest(\"two strings\", \"-\") \\\n", " .table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Only get the first element" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 11 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
two strings_1
\n", "
11 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
car
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
tv
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
tv
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "
pc
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 11 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.unnest(\"two strings\", \"-\", index=1).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Unnest array of string" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 12 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
col_array_0
\n", "
11 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array_1
\n", "
12 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
baby
\n", "
\n", "
sorry
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
baby⸱1
\n", "
\n", "
sorry⸱1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
baby⸱2
\n", "
\n", "
sorry⸱2
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "
baby⸱3
\n", "
\n", "
sorry⸱3
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 12 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df \\\n", " .cols.unnest(\"col_array\") \\\n", " .table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Unnest and array of ints" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 13 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
col_int_0
\n", "
11 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int_1
\n", "
12 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int_2
\n", "
13 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
1
\n", "
\n", "
2
\n", "
\n", "
3
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
4
\n", "
\n", "
None
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
5
\n", "
\n", "
6
\n", "
\n", "
7
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "
7
\n", "
\n", "
8
\n", "
\n", "
None
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 13 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df \\\n", " .cols.unnest([\"col_int\"]) \\\n", " .table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Spits in 3 parts" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 13 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
two strings_0
\n", "
11 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings_1
\n", "
12 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings_2
\n", "
13 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
cat
\n", "
\n", "
car
\n", "
\n", "
None
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
tv
\n", "
\n", "
None
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
eagle
\n", "
\n", "
tv
\n", "
\n", "
plus
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "
lion
\n", "
\n", "
pc
\n", "
\n", "
None
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 13 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df \\\n", " .cols.unnest([\"two strings\"], splits=3, separator=\"-\") \\\n", " .table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Unnest a Vector" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# from pyspark.ml.linalg import Vectors\n", "\n", "# df1 = op.sc.parallelize([\n", "# (\"assert\", Vectors.dense([1, 2, 3])),\n", "# (\"require\", Vectors.sparse(3, {1: 2}))\n", "# ]).toDF()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# df1 \\\n", "# .cols.unnest([\"vector\"]) \\\n", "# .table()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# df = df.cols.append(\"new_col_1\", 1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Impute" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Fill missing data" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [], "source": [ "df_fill = op.spark.createDataFrame([(1.0, float(\"nan\"), \"1\"),\n", " (2.0, float(\"nan\"), \"nan\"),\n", " (float(\"nan\"), 3.0, None),\n", " (4.0, 4.0, \"2\"),\n", " (5.0, 5.0, \"2\")\n", " ], [\"a\", \"b\", \"c\"]\n", " )" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 5 of 5 rows / 3 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
a
\n", "
1 (double)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
b
\n", "
2 (double)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
c
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1.0
\n", "
\n", "
nan
\n", "
\n", "
1
\n", "
\n", "
2.0
\n", "
\n", "
nan
\n", "
\n", "
nan
\n", "
\n", "
nan
\n", "
\n", "
3.0
\n", "
\n", "
None
\n", "
\n", "
4.0
\n", "
\n", "
4.0
\n", "
\n", "
2
\n", "
\n", "
5.0
\n", "
\n", "
5.0
\n", "
\n", "
2
\n", "
\n", "\n", "\n", "
Viewing 5 of 5 rows / 3 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df_fill.table()" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1 values imputed for column(s) 'a'\n", "2 values imputed for column(s) 'b'\n" ] }, { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 5 of 5 rows / 5 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
a
\n", "
1 (float)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
b
\n", "
2 (float)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
c
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
a_imputed
\n", "
4 (float)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
b_imputed
\n", "
5 (float)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1.0
\n", "
\n", "
nan
\n", "
\n", "
1
\n", "
\n", "
1.0
\n", "
\n", "
4.0
\n", "
\n", "
2.0
\n", "
\n", "
nan
\n", "
\n", "
nan
\n", "
\n", "
2.0
\n", "
\n", "
4.0
\n", "
\n", "
nan
\n", "
\n", "
3.0
\n", "
\n", "
None
\n", "
\n", "
2.0
\n", "
\n", "
3.0
\n", "
\n", "
4.0
\n", "
\n", "
4.0
\n", "
\n", "
2
\n", "
\n", "
4.0
\n", "
\n", "
4.0
\n", "
\n", "
5.0
\n", "
\n", "
5.0
\n", "
\n", "
2
\n", "
\n", "
5.0
\n", "
\n", "
5.0
\n", "
\n", "\n", "\n", "
Viewing 5 of 5 rows / 5 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df_fill.cols.impute([\"a\", \"b\"], \"continuous\", \"median\").table()" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Including 'nan' as Null in processing 'c'\n", "2 values imputed for column(s) 'c' with '2'\n" ] }, { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 5 of 5 rows / 3 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
a
\n", "
1 (double)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
b
\n", "
2 (double)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
c
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1.0
\n", "
\n", "
nan
\n", "
\n", "
1
\n", "
\n", "
2.0
\n", "
\n", "
nan
\n", "
\n", "
2
\n", "
\n", "
nan
\n", "
\n", "
3.0
\n", "
\n", "
2
\n", "
\n", "
4.0
\n", "
\n", "
4.0
\n", "
\n", "
2
\n", "
\n", "
5.0
\n", "
\n", "
5.0
\n", "
\n", "
2
\n", "
\n", "\n", "\n", "
Viewing 5 of 5 rows / 3 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df_fill.cols.impute([\"c\"], \"categorical\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Get columns by type\n", "### Spark\n", "Not implemented in Spark Vanilla\n", "\n", "### Pandas" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['words', 'filter', 'two strings', 'animals', 'col_array', 'col_int', 'thing', 'num 2'] column(s) was not processed because is not ['int']\n" ] }, { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 2 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
num
\n", "
1 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
2 (int)
\n", "
\n", " \n", "
\n", "
\n", "
1
\n", "
\n", "
1
\n", "
\n", "
2
\n", "
\n", "
1
\n", "
\n", "
2
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 2 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.select_by_dtypes(\"int\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Apply custom function\n", "\n", "Spark have few ways to transform data rdd, Columns Expression, UDF and Pandas UDF. apply() and apply_expr() try to make a consistent way to call this expression without knowing the implementation details.\n", "\n", "### Spark\n", "You need to declare a UDF Spark function\n", "\n", "### Pandas\n", "Almost the same behavior that Optimus" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a function that only apply to string value in column filter\n", "\n", "Sometimes there are columns with for example with numbers even when are supposed to be only of words or letters. \n", "\n", "In order to solve this problem, apply_by_dtypes() function can be used. \n", "\n", "In the next example we replace a number in a string column with \"new string\"" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
new⸱string
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def func(val, attr):\n", " return attr\n", "\n", "\n", "df.cols.apply_by_dtypes(\"filter\", func, \"string\", \"new string\", data_type=\"integer\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a UDF function that sum a values(32 in this case) to two columns" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
33
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
33
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
34
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
33
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
34
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
33
\n", "
\n", "
None
\n", "
\n", "
35
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
33
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def func(val, attr):\n", " return val + attr\n", "\n", "\n", "df.cols.apply([\"num\", \"new_col_1\"], func, \"int\", 32, \"udf\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a Pandas UDF function that sum a values(32 in this case) to two columns" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
11
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
11
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
12
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
11
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
12
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
11
\n", "
\n", "
None
\n", "
\n", "
13
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
11
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def func(val, attr):\n", " return val + attr\n", "\n", "\n", "df.cols.apply([\"num\", \"new_col_1\"], func, \"int\", 10).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Select row where column \"filter\" is \"integer\"" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from optimus.audf import filter_row_by_data_type as fbdt\n", "df.rows.select(fbdt(\"filter\", \"integer\")).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create an abstract dataframe to filter a rows where the value of column \"num\"> 1" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from optimus.audf import abstract_udf as audf\n", "\n", "\n", "def func(val, attr):\n", " return val > 1\n", "\n", "\n", "df.rows.select(audf(\"num\", func, \"boolean\")).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create an abstract dataframe (Pandas UDF) to pass two arguments to a function a apply a sum operation" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "lines_to_end_of_cell_marker": 2 }, "outputs": [], "source": [ "from optimus.audf import abstract_udf as audf\n", "\n", "\n", "def func(val, attr):\n", " return val + attr[0] + attr[1]\n", "\n", "\n", "df.withColumn(\"num_sum\", audf(\"num\", func, \"int\", [10, 20])).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Apply a column expression to when the value of \"num\" or \"num 2\" is grater than 2" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from pyspark.sql import functions as F\n", "\n", "def func(col_name, attr):\n", " return F.when(F.col(col_name) > 2, 10).otherwise(1)\n", "\n", "\n", "df.cols.apply_expr([\"num\", \"num 2\"], func).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Convert to uppercase" ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
DOG
\n", "
\n", "
housé
\n", "
\n", "
CAT-CAR
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
CAT
\n", "
\n", "
tv
\n", "
\n", "
DOG-TV
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
FROG
\n", "
\n", "
table
\n", "
\n", "
EAGLE-TV-PLUS
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
EAGLE
\n", "
\n", "
glass
\n", "
\n", "
LION-PC
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "\n", "\n", "\n", "def func(col_name, attr):\n", " return F.upper(F.col(col_name))\n", "\n", "\n", "df.cols.apply_expr([\"two strings\", \"animals\"], func).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Using apply with a condition" ] }, { "cell_type": "code", "execution_count": 49, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
10
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
10
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
10
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
10
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
10
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
10
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
10
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def func(val, attr):\n", " return 10\n", "\n", "\n", "col = \"num\"\n", "\n", "df.cols.apply(col, func, \"int\", when=df[\"num\"] > 1).table()\n", "\n", "df.cols.apply(col, func, \"int\", when=fbdt(col, \"int\")).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Count Nulls" ] }, { "cell_type": "code", "execution_count": 50, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "\n", "df_null = op.spark.createDataFrame(\n", " [(1, 1, None), (1, 2, float(5)), (1, 3, np.nan), (1, 4, None), (1, 5, float(10)), (1, 6, float('nan')),\n", " (1, 6, float('nan'))],\n", " ('session', \"timestamp1\", \"id2\"))" ] }, { "cell_type": "code", "execution_count": 51, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 7 of 7 rows / 3 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
session
\n", "
1 (bigint)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
timestamp1
\n", "
2 (bigint)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
id2
\n", "
3 (double)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
1
\n", "
\n", "
2
\n", "
\n", "
5.0
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
nan
\n", "
\n", "
1
\n", "
\n", "
4
\n", "
\n", "
None
\n", "
\n", "
1
\n", "
\n", "
5
\n", "
\n", "
10.0
\n", "
\n", "
1
\n", "
\n", "
6
\n", "
\n", "
nan
\n", "
\n", "
1
\n", "
\n", "
6
\n", "
\n", "
nan
\n", "
\n", "\n", "\n", "
Viewing 7 of 7 rows / 3 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df_null.table()" ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "5" ] }, "execution_count": 52, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_null.cols.count_na(\"id2\")" ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'session': 0, 'timestamp1': 0, 'id2': 5}" ] }, "execution_count": 53, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_null.cols.count_na(\"*\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Count uniques\n", "### Spark\n", "\n", "### Pandas\n" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'words': 3,\n", " 'num': 3,\n", " 'animals': 4,\n", " 'thing': 4,\n", " 'two strings': 4,\n", " 'filter': 4,\n", " 'num 2': 4,\n", " 'col_array': 3,\n", " 'col_int': 4,\n", " 'new_col_1': 1}" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.cols.count_uniques(\"*\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Unique\n", "### Spark\n", "An abstraction of distinct to be use in multiple columns at the same time\n", "\n", "### Pandas\n", "Similar behavior than pandas" ] }, { "cell_type": "code", "execution_count": 55, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
new_col_1
\n", "
10 (int)
\n", "
\n", " \n", "
\n", "
\n", "
⸱⸱I⸱like⸱⸱⸱⸱⸱fish⸱⸱
\n", "
\n", "
1
\n", "
\n", "
dog
\n", "
\n", "
housé
\n", "
\n", "
cat-car
\n", "
\n", "
a
\n", "
\n", "
1
\n", "
\n", "
['baby',⸱'sorry']
\n", "
\n", "
[1,⸱2,⸱3]
\n", "
\n", "
1
\n", "
\n", "
⸱⸱⸱⸱zombies
\n", "
\n", "
2
\n", "
\n", "
cat
\n", "
\n", "
tv
\n", "
\n", "
dog-tv
\n", "
\n", "
b
\n", "
\n", "
2
\n", "
\n", "
['baby⸱1',⸱'sorry⸱1']
\n", "
\n", "
[3,⸱4]
\n", "
\n", "
1
\n", "
\n", "
simpsons⸱⸱⸱cat⸱lady
\n", "
\n", "
2
\n", "
\n", "
frog
\n", "
\n", "
table
\n", "
\n", "
eagle-tv-plus
\n", "
\n", "
1
\n", "
\n", "
3
\n", "
\n", "
['baby⸱2',⸱'sorry⸱2']
\n", "
\n", "
[5,⸱6,⸱7]
\n", "
\n", "
1
\n", "
\n", "
None
\n", "
\n", "
3
\n", "
\n", "
eagle
\n", "
\n", "
glass
\n", "
\n", "
lion-pc
\n", "
\n", "
c
\n", "
\n", "
4
\n", "
\n", "
['baby⸱3',⸱'sorry⸱3']
\n", "
\n", "
[7,⸱8]
\n", "
\n", "
1
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.table()" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [], "source": [ "df_distinct = op.create.df(\n", " [\n", " (\"words\", \"str\", True),\n", " (\"num\", \"int\", True)\n", " ],\n", " [\n", " (\" I like fish \", 1),\n", " (\" zombies\", 2),\n", " (\"simpsons cat lady\", 2),\n", " (None, 3),\n", " (None, 0)\n", " ])" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 1 columns
\n", "
200 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
num
\n", "
1 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
0\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 1 columns
\n", "
200 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df_distinct.cols.unique(\"num\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Count Zeros" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[{'num': 1}]" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_zeros = df_distinct\n", "df_zeros.cols.count_zeros(\"*\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Column Data Types" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'words': 'string',\n", " 'num': 'int',\n", " 'animals': 'string',\n", " 'thing': 'string',\n", " 'two strings': 'string',\n", " 'filter': 'string',\n", " 'num 2': 'string',\n", " 'col_array': 'array',\n", " 'col_int': 'array'}" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.cols.dtypes('*')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Replace" ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Replace \"dog\",\"cat\" in column \"animals\" by the word \"animals\"" ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
animals\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
animals\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.replace(\"animals\", [\"dog\", \"cat\"], \"animals\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Replace \"dog-tv\", \"cat\", \"eagle\", \"fish\" in columns \"two strings\",\"animals\" by the string \"animals\"" ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
animals-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
animals\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
animals\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
animals-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
animals\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.replace([\"two strings\", \"animals\"], [\"dog-tv\", \"cat\", \"eagle\", \"fish\"], \"animals\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Replace \"dog\" by \"dog_1\" and \"cat\" by \"cat_1\" in columns \"animals\"" ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.replace(\"animals\", [(\"dog\", \"dog_1\"), (\"cat\", \"cat_1\")]).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Replace in column \"animals\", \"dog\" by \"pet\" " ] }, { "cell_type": "code", "execution_count": 49, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
animal\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.replace(\"animals\", \"dog\", \"animal\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Replace a,b,c by % in all columns" ] }, { "cell_type": "code", "execution_count": 50, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
%%t-%%r\n", "
\n", "
\n", "
%\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
⋅⋅⋅⋅zom%ies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
%%t\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
%\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
simpsons⋅⋅⋅%%t⋅l%dy\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
t%%le\n", "
\n", "
\n", "
e%gle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
e%gle\n", "
\n", "
\n", "
gl%ss\n", "
\n", "
\n", "
lion-p%\n", "
\n", "
\n", "
%\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.replace(\"*\", [\"a\", \"b\", \"c\"], \"%\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Replace 3 and 2 by 10 in a numeric columns" ] }, { "cell_type": "code", "execution_count": 51, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.replace('num', [\"3\", 2], 10).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Replace 3 by 6 and 2 by 12 in a numeric columns" ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.replace('num', [(\"3\", 6), (2, 12)]).table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Replace as words" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
animal\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.replace(\"animals\", \"dog\", \"animal\", search_by=\"words\").table()" ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
friends
\n", "
10 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
animal\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 10 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.replace(\"animals\", \"dog\", \"animal\", search_by=\"words\", output_cols=\"friends\").table()" ] }, { "cell_type": "code", "execution_count": 61, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 16 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
wordsnew
\n", "
10 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
numnew
\n", "
11 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animalsnew
\n", "
12 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thingnew
\n", "
13 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two stringsnew
\n", "
14 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filternew
\n", "
15 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2new
\n", "
16 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
11\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
11\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
11\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 16 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.replace(\"*\", \"1\", \"11\", search_by=\"chars\", output_cols=\"new\").table()" ] }, { "cell_type": "code", "execution_count": 62, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.replace(\"animals\", [(\"dog\", \"dog_1\"), (\"cat\", \"cat_1\")], \"words\").table()" ] }, { "cell_type": "code", "execution_count": 63, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
animals\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
animals\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.replace(\"animals\", [\"dog\", \"cat\"], \"animals\", \"words\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Use Regex" ] }, { "cell_type": "code", "execution_count": 66, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat_1\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat_1\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
cat_1\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.replace_regex('*', '.*[Cc]at.*', 'cat_1').table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Nest" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Merge two columns in a column vector\n", "#### Match the string as a word not as a substring" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 11 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num_1
\n", "
10 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_nested
\n", "
11 (vector)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
[1.0,1.0]\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
[2.0,2.0]\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
[2.0,2.0]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
[3.0,3.0]\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 11 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df = df.cols.copy(\"num\", \"num_1\")\n", "df.cols.nest([\"num\", \"num_1\"], output_col=\"col_nested\", shape=\"vector\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Merge two columns in a string columns" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 12 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num_1
\n", "
10 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animalscol_nested
\n", "
11 (string)
\n", "
\n", " \n", " not nullable\n", " \n", "
\n", "
\n", "
two stringscol_nested
\n", "
12 (string)
\n", "
\n", " \n", " not nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dogcat-car\n", "
\n", "
\n", "
dogcat-car\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
catdog-tv\n", "
\n", "
\n", "
catdog-tv\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frogeagle-tv-plus\n", "
\n", "
\n", "
frogeagle-tv-plus\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eaglelion-pc\n", "
\n", "
\n", "
eaglelion-pc\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 12 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.nest([\"animals\", \"two strings\"], output_col=\"col_nested\", shape=\"string\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Merge three columns in an array" ] }, { "cell_type": "code", "execution_count": 76, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 12 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animalscol_nested
\n", "
10 (array<string>)
\n", "
\n", " \n", " not nullable\n", " \n", "
\n", "
\n", "
two stringscol_nested
\n", "
11 (array<string>)
\n", "
\n", " \n", " not nullable\n", " \n", "
\n", "
\n", "
num 2col_nested
\n", "
12 (array<string>)
\n", "
\n", " \n", " not nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
[baby,⋅sorry]\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
['dog',⋅'cat-car',⋅'1']\n", "
\n", "
\n", "
['dog',⋅'cat-car',⋅'1']\n", "
\n", "
\n", "
['dog',⋅'cat-car',⋅'1']\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
[baby⋅1,⋅sorry⋅1]\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
['cat',⋅'dog-tv',⋅'2']\n", "
\n", "
\n", "
['cat',⋅'dog-tv',⋅'2']\n", "
\n", "
\n", "
['cat',⋅'dog-tv',⋅'2']\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
[baby⋅2,⋅sorry⋅2]\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
['frog',⋅'eagle-tv-plus',⋅'3']\n", "
\n", "
\n", "
['frog',⋅'eagle-tv-plus',⋅'3']\n", "
\n", "
\n", "
['frog',⋅'eagle-tv-plus',⋅'3']\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
[baby⋅3,⋅sorry⋅3]\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "
['eagle',⋅'lion-pc',⋅'4']\n", "
\n", "
\n", "
['eagle',⋅'lion-pc',⋅'4']\n", "
\n", "
\n", "
['eagle',⋅'lion-pc',⋅'4']\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 12 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.nest([\"animals\", \"two strings\", \"num 2\"], output_col=\"col_nested\", shape=\"array\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Histograms" ] }, { "cell_type": "code", "execution_count": 82, "metadata": {}, "outputs": [], "source": [ "df = op.load.csv(\"https://raw.githubusercontent.com/ironmussa/Optimus/master/examples/data/foo.csv\")" ] }, { "cell_type": "code", "execution_count": 83, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
id
\n", "
1 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
firstName
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
lastName
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
billingId
\n", "
4 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
product
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
price
\n", "
6 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
birth
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
dummyCol
\n", "
8 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
Luis\n", "
\n", "
\n", "
Alvarez$$%!\n", "
\n", "
\n", "
123\n", "
\n", "
\n", "
Cake\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
1980/07/07\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
André\n", "
\n", "
\n", "
Ampère\n", "
\n", "
\n", "
423\n", "
\n", "
\n", "
piza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1950/07/08\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
NiELS\n", "
\n", "
\n", "
Böhr//((%%\n", "
\n", "
\n", "
551\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/09\n", "
\n", "
\n", "
give\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
PAUL\n", "
\n", "
\n", "
dirac$\n", "
\n", "
\n", "
521\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1954/07/10\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
Albert\n", "
\n", "
\n", "
Einstein\n", "
\n", "
\n", "
634\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/11\n", "
\n", "
\n", "
up\n", "
\n", "
\n", "
6\n", "
\n", "
\n", "
Galileo\n", "
\n", "
\n", "
⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅GALiLEI\n", "
\n", "
\n", "
672\n", "
\n", "
\n", "
arepa\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
1930/08/12\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
7\n", "
\n", "
\n", "
CaRL\n", "
\n", "
\n", "
Ga%%%uss\n", "
\n", "
\n", "
323\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1970/07/13\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
David\n", "
\n", "
\n", "
H$$$ilbert\n", "
\n", "
\n", "
624\n", "
\n", "
\n", "
taaaccoo\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1950/07/14\n", "
\n", "
\n", "
let\n", "
\n", "
\n", "
9\n", "
\n", "
\n", "
Johannes\n", "
\n", "
\n", "
KEPLER\n", "
\n", "
\n", "
735\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1920/04/22\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
JaMES\n", "
\n", "
\n", "
M$$ax%%well\n", "
\n", "
\n", "
875\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1923/03/12\n", "
\n", "
\n", "
down\n", "
\n", "
\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.table()" ] }, { "cell_type": "code", "execution_count": 84, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[{'count': 1, 'lower': 1.0, 'upper': 1.9},\n", " {'count': 1, 'lower': 1.9, 'upper': 2.8},\n", " {'count': 4, 'lower': 2.8, 'upper': 3.6999999999999997},\n", " {'count': 1, 'lower': 3.6999999999999997, 'upper': 4.6},\n", " {'count': 2, 'lower': 4.6, 'upper': 5.5},\n", " {'count': 0, 'lower': 5.5, 'upper': 6.4},\n", " {'count': 0, 'lower': 6.4, 'upper': 7.300000000000001},\n", " {'count': 6, 'lower': 7.300000000000001, 'upper': 8.200000000000001},\n", " {'count': 2, 'lower': 8.200000000000001, 'upper': 9.100000000000001},\n", " {'count': 2, 'lower': 9.100000000000001, 'upper': 10.0}]" ] }, "execution_count": 84, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.cols.hist(\"price\", 10)" ] }, { "cell_type": "code", "execution_count": 85, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'billingId': [{'value': 992, 'count': 1},\n", " {'value': 912, 'count': 1},\n", " {'value': 886, 'count': 1},\n", " {'value': 875, 'count': 1},\n", " {'value': 812, 'count': 1},\n", " {'value': 735, 'count': 1},\n", " {'value': 672, 'count': 1},\n", " {'value': 634, 'count': 1},\n", " {'value': 624, 'count': 1},\n", " {'value': 553, 'count': 1}]}" ] }, "execution_count": 85, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.cols.frequency(\"billingId\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Statistics" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Quantile Statistics" ] }, { "cell_type": "code", "execution_count": 86, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "111\n", "{'billingId': {'0.05': 111.0, '0.25': 111.0, '0.5': 111.0, '0.75': 111.0, '0.95': 111.0}, 'price': {'0.05': 1.0, '0.25': 1.0, '0.5': 1.0, '0.75': 1.0, '0.95': 1.0}}\n", "992\n", "{'billingId': 111.0, 'price': 1.0}\n", "{'billingId': {'min': 111, 'max': 992}, 'price': {'min': 1, 'max': 10}}\n", "{'billingId': 280.19735, 'price': 2.95285}\n" ] } ], "source": [ "print(df.cols.min(\"billingId\"))\n", "print(df.cols.percentile(['billingId', 'price'], [0.05, 0.25, 0.5, 0.75, 0.95]))\n", "print(df.cols.max(\"billingId\"))\n", "print(df.cols.median([\"billingId\", \"price\"]))\n", "print(df.cols.range([\"billingId\", \"price\"]))\n", "print(df.cols.std([\"billingId\", \"price\"]))" ] }, { "cell_type": "code", "execution_count": 87, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{'id': 1, 'firstName': '((( Heinrich )))))', 'lastName': ' GALiLEI', 'billingId': 111, 'product': '110790', 'price': 1, 'birth': '1899/01/01', 'dummyCol': '#'}\n" ] } ], "source": [ "print(df.cols.min(\"*\"))" ] }, { "cell_type": "raw", "metadata": {}, "source": [ "### Descriptive Statistics" ] }, { "cell_type": "code", "execution_count": 88, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "-1.04115\n", "556.0\n", "-0.2137\n", "10564\n", "78510.55556\n", "0.0\n" ] } ], "source": [ "print(df.cols.kurt(\"billingId\"))\n", "print(df.cols.mean(\"billingId\"))\n", "print(df.cols.skewness(\"billingId\"))\n", "print(df.cols.sum(\"billingId\"))\n", "print(df.cols.variance(\"billingId\"))\n", "print(df.cols.mad(\"billingId\"))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Calculate Median Absolute deviation" ] }, { "cell_type": "code", "execution_count": 89, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.0" ] }, "execution_count": 89, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.cols.mad(\"price\")" ] }, { "cell_type": "code", "execution_count": 90, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'mad': 0.0, 'median': 1.0}" ] }, "execution_count": 90, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.cols.mad(\"price\", more=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Calculate precentiles" ] }, { "cell_type": "code", "execution_count": 91, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{'0.05': 1.0, '0.25': 1.0, '0.5': 1.0, '0.75': 1.0, '0.95': 1.0}\n" ] } ], "source": [ "print(df.cols.percentile(['price'], [0.05, 0.25, 0.5, 0.75, 0.95]))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Calculate Mode" ] }, { "cell_type": "code", "execution_count": 92, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[{'price': 8}, {'billingId': None}]\n" ] } ], "source": [ "print(df.cols.mode([\"price\", \"billingId\"]))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## String Operations" ] }, { "cell_type": "code", "execution_count": 93, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
id
\n", "
1 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
firstName
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
lastName
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
billingId
\n", "
4 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
product
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
price
\n", "
6 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
birth
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
dummyCol
\n", "
8 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
Luis\n", "
\n", "
\n", "
Alvarez$$%!\n", "
\n", "
\n", "
123\n", "
\n", "
\n", "
Cake\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
1980/07/07\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
André\n", "
\n", "
\n", "
Ampère\n", "
\n", "
\n", "
423\n", "
\n", "
\n", "
piza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1950/07/08\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
NiELS\n", "
\n", "
\n", "
Böhr//((%%\n", "
\n", "
\n", "
551\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/09\n", "
\n", "
\n", "
give\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
PAUL\n", "
\n", "
\n", "
dirac$\n", "
\n", "
\n", "
521\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1954/07/10\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
Albert\n", "
\n", "
\n", "
Einstein\n", "
\n", "
\n", "
634\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/11\n", "
\n", "
\n", "
up\n", "
\n", "
\n", "
6\n", "
\n", "
\n", "
Galileo\n", "
\n", "
\n", "
⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅GALiLEI\n", "
\n", "
\n", "
672\n", "
\n", "
\n", "
arepa\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
1930/08/12\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
7\n", "
\n", "
\n", "
CaRL\n", "
\n", "
\n", "
Ga%%%uss\n", "
\n", "
\n", "
323\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1970/07/13\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
David\n", "
\n", "
\n", "
H$$$ilbert\n", "
\n", "
\n", "
624\n", "
\n", "
\n", "
taaaccoo\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1950/07/14\n", "
\n", "
\n", "
let\n", "
\n", "
\n", "
9\n", "
\n", "
\n", "
Johannes\n", "
\n", "
\n", "
KEPLER\n", "
\n", "
\n", "
735\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1920/04/22\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
JaMES\n", "
\n", "
\n", "
M$$ax%%well\n", "
\n", "
\n", "
875\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1923/03/12\n", "
\n", "
\n", "
down\n", "
\n", "
\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.table()" ] }, { "cell_type": "code", "execution_count": 94, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
id
\n", "
1 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
firstName
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
lastName
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
billingId
\n", "
4 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
product
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
price
\n", "
6 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
birth
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
dummyCol
\n", "
8 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
SIUL\n", "
\n", "
\n", "
alvarez$$%!\n", "
\n", "
\n", "
123\n", "
\n", "
\n", "
CAKE\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
1980/07/07\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
ÉRDNA\n", "
\n", "
\n", "
ampère\n", "
\n", "
\n", "
423\n", "
\n", "
\n", "
PIZA\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1950/07/08\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
SLEIN\n", "
\n", "
\n", "
böhr//((%%\n", "
\n", "
\n", "
551\n", "
\n", "
\n", "
PIZZA\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/09\n", "
\n", "
\n", "
give\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
LUAP\n", "
\n", "
\n", "
dirac$\n", "
\n", "
\n", "
521\n", "
\n", "
\n", "
PIZZA\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1954/07/10\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
TREBLA\n", "
\n", "
\n", "
einstein\n", "
\n", "
\n", "
634\n", "
\n", "
\n", "
PIZZA\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/11\n", "
\n", "
\n", "
up\n", "
\n", "
\n", "
6\n", "
\n", "
\n", "
OELILAG\n", "
\n", "
\n", "
galilei\n", "
\n", "
\n", "
672\n", "
\n", "
\n", "
AREPA\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
1930/08/12\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
7\n", "
\n", "
\n", "
LRAC\n", "
\n", "
\n", "
ga%%%uss\n", "
\n", "
\n", "
323\n", "
\n", "
\n", "
TACO\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1970/07/13\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
DIVAD\n", "
\n", "
\n", "
h$$$ilbert\n", "
\n", "
\n", "
624\n", "
\n", "
\n", "
TAAACCOO\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1950/07/14\n", "
\n", "
\n", "
let\n", "
\n", "
\n", "
9\n", "
\n", "
\n", "
SENNAHOJ\n", "
\n", "
\n", "
kepler\n", "
\n", "
\n", "
735\n", "
\n", "
\n", "
TACO\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1920/04/22\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
SEMAJ\n", "
\n", "
\n", "
m$$ax%%well\n", "
\n", "
\n", "
875\n", "
\n", "
\n", "
TACO\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1923/03/12\n", "
\n", "
\n", "
down\n", "
\n", "
\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df \\\n", " .cols.trim(\"lastName\") \\\n", " .cols.lower(\"lastName\") \\\n", " .cols.upper([\"product\", \"firstName\"]) \\\n", " .cols.reverse(\"firstName\") \\\n", " .table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Calculate the interquartile range" ] }, { "cell_type": "code", "execution_count": 95, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "5.0" ] }, "execution_count": 95, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.cols.iqr(\"price\")" ] }, { "cell_type": "code", "execution_count": 96, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'iqr': 5.0, 'q1': 3.0, 'q2': 8.0, 'q3': 8.0}" ] }, "execution_count": 96, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.cols.iqr(\"price\", more=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Calculate Zscore" ] }, { "cell_type": "code", "execution_count": 97, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
id
\n", "
1 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
firstName
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
lastName
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
billingId
\n", "
4 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
product
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
price
\n", "
6 (double)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
birth
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
dummyCol
\n", "
8 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
Luis\n", "
\n", "
\n", "
Alvarez$$%!\n", "
\n", "
\n", "
123\n", "
\n", "
\n", "
Cake\n", "
\n", "
\n", "
1.336800040638705\n", "
\n", "
\n", "
1980/07/07\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
André\n", "
\n", "
\n", "
Ampère\n", "
\n", "
\n", "
423\n", "
\n", "
\n", "
piza\n", "
\n", "
\n", "
0.6594882909731277\n", "
\n", "
\n", "
1950/07/08\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
NiELS\n", "
\n", "
\n", "
Böhr//((%%\n", "
\n", "
\n", "
551\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
0.6594882909731277\n", "
\n", "
\n", "
1990/07/09\n", "
\n", "
\n", "
give\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
PAUL\n", "
\n", "
\n", "
dirac$\n", "
\n", "
\n", "
521\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
0.6594882909731277\n", "
\n", "
\n", "
1954/07/10\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
Albert\n", "
\n", "
\n", "
Einstein\n", "
\n", "
\n", "
634\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
0.6594882909731277\n", "
\n", "
\n", "
1990/07/11\n", "
\n", "
\n", "
up\n", "
\n", "
\n", "
6\n", "
\n", "
\n", "
Galileo\n", "
\n", "
\n", "
⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅GALiLEI\n", "
\n", "
\n", "
672\n", "
\n", "
\n", "
arepa\n", "
\n", "
\n", "
0.3564793335252382\n", "
\n", "
\n", "
1930/08/12\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
7\n", "
\n", "
\n", "
CaRL\n", "
\n", "
\n", "
Ga%%%uss\n", "
\n", "
\n", "
323\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
1.0337910831908155\n", "
\n", "
\n", "
1970/07/13\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
David\n", "
\n", "
\n", "
H$$$ilbert\n", "
\n", "
\n", "
624\n", "
\n", "
\n", "
taaaccoo\n", "
\n", "
\n", "
1.0337910831908155\n", "
\n", "
\n", "
1950/07/14\n", "
\n", "
\n", "
let\n", "
\n", "
\n", "
9\n", "
\n", "
\n", "
Johannes\n", "
\n", "
\n", "
KEPLER\n", "
\n", "
\n", "
735\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
1.0337910831908155\n", "
\n", "
\n", "
1920/04/22\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
JaMES\n", "
\n", "
\n", "
M$$ax%%well\n", "
\n", "
\n", "
875\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
1.0337910831908155\n", "
\n", "
\n", "
1923/03/12\n", "
\n", "
\n", "
down\n", "
\n", "
\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.z_score(\"price\").table()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Cleaning and Date Operations Operations" ] }, { "cell_type": "code", "execution_count": 98, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
id
\n", "
1 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
firstName
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
lastName
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
billingId
\n", "
4 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
product
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
price
\n", "
6 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
birth
\n", "
7 (float)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
dummyCol
\n", "
8 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
Luis\n", "
\n", "
\n", "
Alvarez$$%!\n", "
\n", "
\n", "
123\n", "
\n", "
\n", "
Cake\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
André\n", "
\n", "
\n", "
Ampère\n", "
\n", "
\n", "
423\n", "
\n", "
\n", "
piza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
NiELS\n", "
\n", "
\n", "
Böhr//((%%\n", "
\n", "
\n", "
551\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
give\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
PAUL\n", "
\n", "
\n", "
dirac$\n", "
\n", "
\n", "
521\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
Albert\n", "
\n", "
\n", "
Einstein\n", "
\n", "
\n", "
634\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
up\n", "
\n", "
\n", "
6\n", "
\n", "
\n", "
Galileo\n", "
\n", "
\n", "
⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅GALiLEI\n", "
\n", "
\n", "
672\n", "
\n", "
\n", "
arepa\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
7\n", "
\n", "
\n", "
CaRL\n", "
\n", "
\n", "
Ga%%%uss\n", "
\n", "
\n", "
323\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
David\n", "
\n", "
\n", "
H$$$ilbert\n", "
\n", "
\n", "
624\n", "
\n", "
\n", "
taaaccoo\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
let\n", "
\n", "
\n", "
9\n", "
\n", "
\n", "
Johannes\n", "
\n", "
\n", "
KEPLER\n", "
\n", "
\n", "
735\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
JaMES\n", "
\n", "
\n", "
M$$ax%%well\n", "
\n", "
\n", "
875\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
down\n", "
\n", "
\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.years_between(\"birth\", \"yyyyMMdd\", ).table()" ] }, { "cell_type": "code", "execution_count": 99, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
id
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
firstName
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
lastName
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
billingId
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
product
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
price
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
birth
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
dummyCol
\n", "
8 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
Luis\n", "
\n", "
\n", "
Alvarez$$!\n", "
\n", "
\n", "
123\n", "
\n", "
\n", "
Cake\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
1980/07/07\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
André\n", "
\n", "
\n", "
Ampère\n", "
\n", "
\n", "
423\n", "
\n", "
\n", "
piza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1950/07/08\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
NiELS\n", "
\n", "
\n", "
Böhr//((\n", "
\n", "
\n", "
551\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/09\n", "
\n", "
\n", "
give\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
PAUL\n", "
\n", "
\n", "
dirac$\n", "
\n", "
\n", "
521\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1954/07/10\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
Albert\n", "
\n", "
\n", "
Einstein\n", "
\n", "
\n", "
634\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/11\n", "
\n", "
\n", "
up\n", "
\n", "
\n", "
6\n", "
\n", "
\n", "
Galileo\n", "
\n", "
\n", "
⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅GALiLEI\n", "
\n", "
\n", "
672\n", "
\n", "
\n", "
arepa\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
1930/08/12\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
7\n", "
\n", "
\n", "
CaRL\n", "
\n", "
\n", "
Gauss\n", "
\n", "
\n", "
323\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1970/07/13\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
David\n", "
\n", "
\n", "
H$$$ilbert\n", "
\n", "
\n", "
624\n", "
\n", "
\n", "
taaaccoo\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1950/07/14\n", "
\n", "
\n", "
let\n", "
\n", "
\n", "
9\n", "
\n", "
\n", "
Johannes\n", "
\n", "
\n", "
KEPLER\n", "
\n", "
\n", "
735\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1920/04/22\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
JaMES\n", "
\n", "
\n", "
M$$axwell\n", "
\n", "
\n", "
875\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1923/03/12\n", "
\n", "
\n", "
down\n", "
\n", "
\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.remove(\"*\", [\"&\", \"%\"]).table()" ] }, { "cell_type": "code", "execution_count": 100, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
id
\n", "
1 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
firstName
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
lastName
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
billingId
\n", "
4 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
product
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
price
\n", "
6 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
birth
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
dummyCol
\n", "
8 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
Luis\n", "
\n", "
\n", "
Alvarez$$%!\n", "
\n", "
\n", "
123\n", "
\n", "
\n", "
Cake\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
1980/07/07\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
André\n", "
\n", "
\n", "
Ampere\n", "
\n", "
\n", "
423\n", "
\n", "
\n", "
piza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1950/07/08\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
NiELS\n", "
\n", "
\n", "
Bohr//((%%\n", "
\n", "
\n", "
551\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/09\n", "
\n", "
\n", "
give\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
PAUL\n", "
\n", "
\n", "
dirac$\n", "
\n", "
\n", "
521\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1954/07/10\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
Albert\n", "
\n", "
\n", "
Einstein\n", "
\n", "
\n", "
634\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/11\n", "
\n", "
\n", "
up\n", "
\n", "
\n", "
6\n", "
\n", "
\n", "
Galileo\n", "
\n", "
\n", "
⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅GALiLEI\n", "
\n", "
\n", "
672\n", "
\n", "
\n", "
arepa\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
1930/08/12\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
7\n", "
\n", "
\n", "
CaRL\n", "
\n", "
\n", "
Ga%%%uss\n", "
\n", "
\n", "
323\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1970/07/13\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
David\n", "
\n", "
\n", "
H$$$ilbert\n", "
\n", "
\n", "
624\n", "
\n", "
\n", "
taaaccoo\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1950/07/14\n", "
\n", "
\n", "
let\n", "
\n", "
\n", "
9\n", "
\n", "
\n", "
Johannes\n", "
\n", "
\n", "
KEPLER\n", "
\n", "
\n", "
735\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1920/04/22\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
JaMES\n", "
\n", "
\n", "
M$$ax%%well\n", "
\n", "
\n", "
875\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1923/03/12\n", "
\n", "
\n", "
down\n", "
\n", "
\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.remove_accents(\"lastName\").table()" ] }, { "cell_type": "code", "execution_count": 101, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
id
\n", "
1 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
firstName
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
lastName
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
billingId
\n", "
4 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
product
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
price
\n", "
6 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
birth
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
dummyCol
\n", "
8 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
Luis\n", "
\n", "
\n", "
Alvarez\n", "
\n", "
\n", "
123\n", "
\n", "
\n", "
Cake\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
1980/07/07\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
André\n", "
\n", "
\n", "
Ampère\n", "
\n", "
\n", "
423\n", "
\n", "
\n", "
piza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1950/07/08\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
NiELS\n", "
\n", "
\n", "
Böhr\n", "
\n", "
\n", "
551\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/09\n", "
\n", "
\n", "
give\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
PAUL\n", "
\n", "
\n", "
dirac\n", "
\n", "
\n", "
521\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1954/07/10\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
Albert\n", "
\n", "
\n", "
Einstein\n", "
\n", "
\n", "
634\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/11\n", "
\n", "
\n", "
up\n", "
\n", "
\n", "
6\n", "
\n", "
\n", "
Galileo\n", "
\n", "
\n", "
⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅GALiLEI\n", "
\n", "
\n", "
672\n", "
\n", "
\n", "
arepa\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
1930/08/12\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
7\n", "
\n", "
\n", "
CaRL\n", "
\n", "
\n", "
Gauss\n", "
\n", "
\n", "
323\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1970/07/13\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
David\n", "
\n", "
\n", "
Hilbert\n", "
\n", "
\n", "
624\n", "
\n", "
\n", "
taaaccoo\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1950/07/14\n", "
\n", "
\n", "
let\n", "
\n", "
\n", "
9\n", "
\n", "
\n", "
Johannes\n", "
\n", "
\n", "
KEPLER\n", "
\n", "
\n", "
735\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1920/04/22\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
JaMES\n", "
\n", "
\n", "
Maxwell\n", "
\n", "
\n", "
875\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1923/03/12\n", "
\n", "
\n", "
down\n", "
\n", "
\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.remove_special_chars(\"lastName\").table()" ] }, { "cell_type": "code", "execution_count": 102, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
id
\n", "
1 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
firstName
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
lastName
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
billingId
\n", "
4 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
product
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
price
\n", "
6 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
birth
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
dummyCol
\n", "
8 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
Luis\n", "
\n", "
\n", "
Alvarez$$%!\n", "
\n", "
\n", "
123\n", "
\n", "
\n", "
Cake\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
1980/07/07\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
André\n", "
\n", "
\n", "
Ampère\n", "
\n", "
\n", "
200\n", "
\n", "
\n", "
piza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1950/07/08\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
NiELS\n", "
\n", "
\n", "
Böhr//((%%\n", "
\n", "
\n", "
200\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/09\n", "
\n", "
\n", "
give\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
PAUL\n", "
\n", "
\n", "
dirac$\n", "
\n", "
\n", "
200\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1954/07/10\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
Albert\n", "
\n", "
\n", "
Einstein\n", "
\n", "
\n", "
200\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/11\n", "
\n", "
\n", "
up\n", "
\n", "
\n", "
6\n", "
\n", "
\n", "
Galileo\n", "
\n", "
\n", "
⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅GALiLEI\n", "
\n", "
\n", "
200\n", "
\n", "
\n", "
arepa\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
1930/08/12\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
7\n", "
\n", "
\n", "
CaRL\n", "
\n", "
\n", "
Ga%%%uss\n", "
\n", "
\n", "
200\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1970/07/13\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
David\n", "
\n", "
\n", "
H$$$ilbert\n", "
\n", "
\n", "
200\n", "
\n", "
\n", "
taaaccoo\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1950/07/14\n", "
\n", "
\n", "
let\n", "
\n", "
\n", "
9\n", "
\n", "
\n", "
Johannes\n", "
\n", "
\n", "
KEPLER\n", "
\n", "
\n", "
200\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1920/04/22\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
JaMES\n", "
\n", "
\n", "
M$$ax%%well\n", "
\n", "
\n", "
200\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1923/03/12\n", "
\n", "
\n", "
down\n", "
\n", "
\n", "\n", "\n", "
Viewing 10 of 19 rows / 8 columns
\n", "
1 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.clip(\"billingId\", 100, 200).table()" ] }, { "cell_type": "code", "execution_count": 103, "metadata": {}, "outputs": [], "source": [ "df_abs = op.create.df(\n", " [\n", " (\"words\", \"str\", True),\n", " (\"num\", \"int\", True),\n", " (\"animals\", \"str\", True),\n", " (\"thing\", StringType(), True),\n", " (\"two strings\", StringType(), True),\n", " (\"filter\", StringType(), True),\n", " (\"num 2\", \"string\", True),\n", " (\"col_array\", ArrayType(StringType()), True),\n", " (\"col_int\", ArrayType(IntegerType()), True)\n", "\n", " ]\n", " ,\n", " [\n", " (\" I like fish \", -1, \"dog\", \"housé\", \"cat-car\", \"a\", \"-1\", [\"baby\", \"sorry\"], [1, 2, 3]),\n", " (\" zombies\", -2, \"cat\", \"tv\", \"dog-tv\", \"b\", \"-2\", [\"baby 1\", \"sorry 1\"], [3, 4]),\n", " (\"simpsons cat lady\", -2, \"frog\", \"table\", \"eagle-tv-plus\", \"1\", \"3\", [\"baby 2\", \"sorry 2\"], [5, 6, 7]),\n", " (None, 3, \"eagle\", \"glass\", \"lion-pc\", \"c\", \"4\", [\"baby 3\", \"sorry 3\"], [7, 8])\n", " ])" ] }, { "cell_type": "code", "execution_count": 104, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
words
\n", "
1 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num
\n", "
2 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
animals
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
thing
\n", "
4 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
two strings
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
filter
\n", "
6 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
num 2
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_array
\n", "
8 (array<string>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
col_int
\n", "
9 (array<int>)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
⋅⋅I⋅like⋅⋅⋅⋅⋅fish⋅⋅\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
dog\n", "
\n", "
\n", "
housé\n", "
\n", "
\n", "
cat-car\n", "
\n", "
\n", "
a\n", "
\n", "
\n", "
-1\n", "
\n", "
\n", "
['baby',⋅'sorry']\n", "
\n", "
\n", "
[1,⋅2,⋅3]\n", "
\n", "
\n", "
⋅⋅⋅⋅zombies\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
cat\n", "
\n", "
\n", "
tv\n", "
\n", "
\n", "
dog-tv\n", "
\n", "
\n", "
b\n", "
\n", "
\n", "
-2\n", "
\n", "
\n", "
['baby⋅1',⋅'sorry⋅1']\n", "
\n", "
\n", "
[3,⋅4]\n", "
\n", "
\n", "
simpsons⋅⋅⋅cat⋅lady\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
frog\n", "
\n", "
\n", "
table\n", "
\n", "
\n", "
eagle-tv-plus\n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
['baby⋅2',⋅'sorry⋅2']\n", "
\n", "
\n", "
[5,⋅6,⋅7]\n", "
\n", "
\n", "
None\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
eagle\n", "
\n", "
\n", "
glass\n", "
\n", "
\n", "
lion-pc\n", "
\n", "
\n", "
c\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
['baby⋅3',⋅'sorry⋅3']\n", "
\n", "
\n", "
[7,⋅8]\n", "
\n", "
\n", "\n", "\n", "
Viewing 4 of 4 rows / 9 columns
\n", "
8 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df_abs.cols.abs([\"num\", \"num 2\"]).table()" ] }, { "cell_type": "code", "execution_count": 105, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "
Viewing 10 of 19 rows / 9 columns
\n", "
1 partition(s)
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", "
id
\n", "
1 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
firstName
\n", "
2 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
lastName
\n", "
3 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
billingId
\n", "
4 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
product
\n", "
5 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
price
\n", "
6 (int)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
birth
\n", "
7 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
dummyCol
\n", "
8 (string)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
billingId_QCUT
\n", "
9 (double)
\n", "
\n", " \n", " nullable\n", " \n", "
\n", "
\n", "
1\n", "
\n", "
\n", "
Luis\n", "
\n", "
\n", "
Alvarez$$%!\n", "
\n", "
\n", "
123\n", "
\n", "
\n", "
Cake\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
1980/07/07\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
0.0\n", "
\n", "
\n", "
2\n", "
\n", "
\n", "
André\n", "
\n", "
\n", "
Ampère\n", "
\n", "
\n", "
423\n", "
\n", "
\n", "
piza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1950/07/08\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
1.0\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
NiELS\n", "
\n", "
\n", "
Böhr//((%%\n", "
\n", "
\n", "
551\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/09\n", "
\n", "
\n", "
give\n", "
\n", "
\n", "
2.0\n", "
\n", "
\n", "
4\n", "
\n", "
\n", "
PAUL\n", "
\n", "
\n", "
dirac$\n", "
\n", "
\n", "
521\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1954/07/10\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
2.0\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
Albert\n", "
\n", "
\n", "
Einstein\n", "
\n", "
\n", "
634\n", "
\n", "
\n", "
pizza\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
1990/07/11\n", "
\n", "
\n", "
up\n", "
\n", "
\n", "
3.0\n", "
\n", "
\n", "
6\n", "
\n", "
\n", "
Galileo\n", "
\n", "
\n", "
⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅GALiLEI\n", "
\n", "
\n", "
672\n", "
\n", "
\n", "
arepa\n", "
\n", "
\n", "
5\n", "
\n", "
\n", "
1930/08/12\n", "
\n", "
\n", "
never\n", "
\n", "
\n", "
3.0\n", "
\n", "
\n", "
7\n", "
\n", "
\n", "
CaRL\n", "
\n", "
\n", "
Ga%%%uss\n", "
\n", "
\n", "
323\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1970/07/13\n", "
\n", "
\n", "
gonna\n", "
\n", "
\n", "
1.0\n", "
\n", "
\n", "
8\n", "
\n", "
\n", "
David\n", "
\n", "
\n", "
H$$$ilbert\n", "
\n", "
\n", "
624\n", "
\n", "
\n", "
taaaccoo\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1950/07/14\n", "
\n", "
\n", "
let\n", "
\n", "
\n", "
2.0\n", "
\n", "
\n", "
9\n", "
\n", "
\n", "
Johannes\n", "
\n", "
\n", "
KEPLER\n", "
\n", "
\n", "
735\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1920/04/22\n", "
\n", "
\n", "
you\n", "
\n", "
\n", "
3.0\n", "
\n", "
\n", "
10\n", "
\n", "
\n", "
JaMES\n", "
\n", "
\n", "
M$$ax%%well\n", "
\n", "
\n", "
875\n", "
\n", "
\n", "
taco\n", "
\n", "
\n", "
3\n", "
\n", "
\n", "
1923/03/12\n", "
\n", "
\n", "
down\n", "
\n", "
\n", "
4.0\n", "
\n", "
\n", "\n", "\n", "
Viewing 10 of 19 rows / 9 columns
\n", "
1 partition(s)
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df.cols.qcut(\"billingId\", 5).table()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "jupytext": { "formats": "ipynb,py:light" }, "kernel_info": { "name": "python3" }, "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.1" }, "nteract": { "version": "0.11.6" } }, "nbformat": 4, "nbformat_minor": 2 }