-
-
Notifications
You must be signed in to change notification settings - Fork 25
Open
Labels
is: trackerstatus: blockedRequires completion of another issue or PRRequires completion of another issue or PRtopic: array api
Description
upstream tracker: scipy/scipy#18867
Typing the array API
... that'll have to wait until someone manages to find the time to work on array-api-typing 😅
Relevant scipy bits
The Array API is partially supported scipy. The following packages support it fully:
clustervqwhiten[py_]vqkmeans[2]
hierarchyint_floorlinkage(used bysingle,complete,average,weighted,centroid,median,ward){cut,to}_treeoptimal_leaf_orderingcophenetinconsistent{from,to}_mlab_linkageis_monotonicis_valid_{im,linkage}num_obs_linkagecorrespondfcluster[data]leaves_listdendrogrammax{dists,inconsts,Rstat}leaders
constantsconvert_temperaturelambda2nu[1.16+]nu2lambda[1.16+]
datasetsdifferentiate[1.15+]derivativejacobianhessian
fft[i][r|h]fft[2|n][i]dct[n][i]dst[n][r]fftfreq[i]fftshift
integrate[1.15+]cubaturetanhsinhtrapezoidnsum
io(not yet, see scipy/scipy#19068)linalgndimagevectorized_filter[1.16+]
optimize_differentiable_functionselementwise.*[1.15+]rosen[_{der,hess,hess_prod}][1.15+]
signal(see scipy/scipy#20678)findfreqs[1.16+]freqs[_{zpk,sos}][1.16+]freqz[_{zpk,sos}][1.16+]envelope[1.16+]resample[_poly][1.16+]remez[1.16+]fir{win[2],ls}[1.16+]minimum_phase[1.16+]zpk2{tf,sos}[1.16+]tf2{zpk,sos}[1.16+]sos2{tf,zpk}[1.16+]lp2{lp,hp,bp,bs}[1.16+]vectorstrength[1.16+]upfirdn[1.16+]
signal.windows[1.16+] (ENH: signal.windows: add array API support (take 2) scipy#21783)(not yet, see scipy/scipy#18867)sparsespeciallog_ndtrndtr[i]chdtr[1.15+]chdtrcerf[c]i0[e]i1[e]betainc[c][1.15+]gammalngammainc[c]{log,exp}it[rel_]entrxlogystdtrit[1.16+][log_]softmax[1.16+]logsumexp[1.16+]
stats(see scipy/scipy#20544)describemomentvariationsemskewkurtosiskstat[var]z{map,score}[1.15+]gzscore[1.15+]gstd[1.16+]t{mean,var,str,sem,min,max}[1.15+]{g,h,p,t}mean[1.15+]quantile[1.16+]rankdata[1.16+]entropydifferential_entropy[1.15+]power_divergencecirc{mean,var,std}directional_stats[1.15+]ttest_{1samp,ind,ind_from_stats,rel}[1.15+]{skew,kurtosis,normal,monte_carlo}testpearsonrchisquarejarque_berabartlettboxcox_llf[1.15+]combine_pvalues[1.15+]
How Scipy implements it
Internally, scipy implements the support in scipy._lib._array_api. From the looks of it, this module will come with a bunch of extra utility functions in scipy 1.15 (37174ad), as well as an additional scipy._lib._array_api_no_0d module in 281a8c3
Libraries that support it
Some libraries require array-api-compat for them to support the array-api (2022):
the following libraries have native support:
Other relevant links:
NeilGirdhar
Metadata
Metadata
Assignees
Labels
is: trackerstatus: blockedRequires completion of another issue or PRRequires completion of another issue or PRtopic: array api