pd.DataFrame supported APIsΒΆ

The following table is structured as follows: The first column contains the method name. The second column is a flag for whether or not there is an implementation in Snowpark for the method in the left column.

Note

Y stands for yes, i.e., supports distributed implementation, N stands for no and API simply errors out, P stands for partial (meaning some parameters may not be supported yet), and D stands for defaults to single node pandas execution via UDF/Sproc.

Attributes

DataFrame attribute

Snowpark implemented? (Y/N/P/D)

Notes for current implementation

T

P

D if any column name is not str or tuple of str

at

N

attrs

N

axes

Y

columns

Y

dtypes

Y

empty

Y

flags

Y

iat

N

iloc

Y

index

Y

This operation is not recommended since it pulls the index into local memory.

loc

P

N for set with MultiIndex

ndim

Y

shape

Y

size

Y

style

N

values

Y

Methods

DataFrame method

Snowpark implemented? (Y/N/P/D)

Missing parameters

Notes for current implementation

abs

Y

add

P

level

add_prefix

Y

add_suffix

Y

agg

P

margins, observed, sort

If axis == 0: Y when function is one of count, mean, min, max, sum, median; std and var supported with ddof=0 or ddof=1; quantile is supported when q is the default value or a scalar. If axis == 1: Y when function is count, min, max, or sum and the index is not a MultiIndex.

aggregate

P

margins, observed, sort

See agg

align

N

all

P

N for non-integer/boolean types

any

P

N for non-integer/boolean types

apply

P

N if axis == 0 or func is not callable or result_type is given or args and kwargs contain DataFrame or Series N if func maps to different column labels.

applymap

P

N if na_action == "ignore"

asfreq

N

asof

N

assign

N

astype

P

N: from string to datetime or errors == "ignore"

at_time

N

backfill

N

between_time

N

bfill

N

bool

N

boxplot

N

clip

N

combine

N

combine_first

N

compare

N

convert_dtypes

N

Not supported since Snowpark pandas is already using nullable datatypes internally.

copy

Y

corr

N

corrwith

N

count

Y

cov

N

cummax

Y

cummin

Y

cumprod

N

cumsum

P

Y if values are numeric

describe

Y

diff

Y

div

P

level

divide

P

level

dot

N

drop

Y

drop_duplicates

Y

droplevel

N

dropna

P

N if axis == 1

duplicated

Y

eq

P

level

equals

N

eval

N

ewm

N

expanding

N

explode

N

ffill

P

N if param limit is set

fillna

P

See ffill

filter

N

first

Y

first_valid_index

Y

floordiv

P

level

from_dict

N

from_records

N

ge

P

level

get

Y

groupby

P

observed is ignored since Categoricals are not implemented yet

Y, support axis == 0 and by is column label or Series from the current DataFrame; otherwise N; Note that supported functions are agg, count, cumcount, cummax, cummin, cumsum, max, mean, median, min, quantile, shift, std, sum, and var. Otherwise N

gt

P

level

head

Y

hist

N

idxmax

P

N for MultiIndex dataframes

idxmin

P

N for MultiIndex dataframes

infer_objects

N

info

P

Index is different, zero bytes reported for memory

insert

Y

interpolate

N

isetitem

N

isin

Y

isna

Y

isnull

Y

items

N

iterrows

Y

itertuples

Y

join

P

N if given the validate param.

keys

Y

kurt

N

kurtosis

N

last

Y

last_valid_index

Y

le

P

level

lt

P

level

map

N

mask

P

N if given axis when other is a DataFrame or level parameters; N if cond or other is Callable

max

Y

mean

Y

median

Y

melt

P

col_level

N when columns are MultiIndex

memory_usage

N

merge

P

N if param validate is given

min

Y

mod

P

level

mode

N

mul

P

level

multiply

P

level

ne

P

level

nlargest

N

notna

Y

notnull

Y

nsmallest

N

nunique

P

N if axis == 1

pad

P

See ffill

pct_change

N

pipe

N

pivot

N

pivot_table

P

observed, sort

N if index, columns, or values is not str, list of str, or None; or MultiIndex; or any argfunc is not β€œcount”, β€œmean”, β€œmin”, β€œmax”, or β€œsum”. N if index is None, margins is True and aggfunc is β€œcount” or β€œmean” or a dictionary. N if index is None and aggfunc is a dictionary containing lists of aggfuncs to apply.

pop

N

pow

P

level

prod

N

product

N

quantile

P

Y if axis == 0, and interpolation is "linear" or "nearest", and method is "single".

query

N

radd

P

level

rank

P

N if axis == 1

rdiv

P

level

reindex

N

reindex_like

N

rename

P

N if mapper is callable or the series has multiindex

rename_axis

Y

reorder_levels

N

replace

P

copy is ignored, method, limit

resample

P

Only DatetimeIndex is supported and its freq will be lost.

reset_index

Y

rfloordiv

P

level

rmod

P

level

rmul

P

level

rolling

P

Supports integer window, min_periods >= 1, and center for axis = 0

round

P

N if decimals is Series

rpow

P

level

rsub

P

level

rtruediv

P

level

sample

P

N if weights, random_state, or replace = True is specified when axis = 0

select_dtypes

Y

sem

N

set_axis

Y

set_flags

N

set_index

Y

shift

P

freq

No support for freq != None.

skew

P

N if axis == 1 or skipna == False or numeric_only=False

sort_index

P

N if given the key param. N if axis == 1, inplace == True, or MultiIndex.

sort_values

P

N if given the key param or axis == 1

squeeze

Y

stack

N

std

P

N if ddof is not 0 or 1

sub

P

level

subtract

P

level

sum

Y

swapaxes

N

swaplevel

N

tail

Y

take

Y

to_clipboard

N

to_csv

N

to_dict

Y

to_excel

N

to_feather

N

to_gbq

N

to_hdf

N

to_html

N

to_json

N

to_latex

N

to_markdown

N

to_numpy

Y

to_orc

N

to_parquet

N

to_period

N

to_pickle

N

to_records

N

to_sql

N

to_stata

N

to_string

N

to_timestamp

N

to_xarray

N

to_xml

N

transform

P

Only callable and string parameters are supported. list and dict parameters are not supported.

transpose

P

See T

truediv

P

level

truncate

N

tz_convert

N

tz_localize

N

unstack

N

update

Y

value_counts

Y

var

P

See std

where

P

See mask

xs

N