Cudf
https://docs.rapids.ai/api/cudf/stable/
import cudf
print(f"{cudf.__version__=}")
print(f"{cudf.__file__=}")
s = cudf.Series([1, 2, 3])
s.max()
gdf = cudf.from_pandas(pdf)
pdf = gdf.to_pandas()
arr = gdf.to_numpy()
def f(row):
x = row["a"]
if x is cudf.NA:
return 0
else:
return x + 1
df = cudf.DataFrame({"a": [1, cudf.NA, 3]})
df.apply(f, axis=1)
@cuda.jit
def multiply_by_5(x, out):
i = cuda.grid(1)
if i < x.size:
out[i] = x[i] * 5
out = cudf.Series(cp.zeros(len(s), dtype="int32"))
multiply_by_5.forall(s.shape[0])(s, out)
python -m cudf.pandas script.py
import cudf.pandas
cudf.pandas.install()
import pandas as pd
git clone https://github.com/rapidsai/cudf.git
cd cudf
conda env create --solver=libmamba --name cudf_dev --file conda/environments/all_cuda-122_arch-x86_64.yaml