PyPortfolioOpt icon indicating copy to clipboard operation
PyPortfolioOpt copied to clipboard

FutureWarning Setting an item of incompatible dtype is deprecated

Open bsdice opened this issue 1 year ago • 1 comments

Yo,

I like to use -X dev and I get this warning on Python 3.11.9 with Pandas 2.2.1:

pypfopt/hierarchical_portfolio.py:135: FutureWarning: Setting an item of incompatible dtype is deprecated and will raise an error in a future version of pandas. Value '[0.22193172 0.22193172]' has dtype incompatible with int64, please explicitly cast to a compatible dtype first. w[first_cluster] *= alpha # weight 1

Which I think can be fixed in https://github.com/robertmartin8/PyPortfolioOpt/blob/master/pypfopt/hierarchical_portfolio.py#L120

by writing

w = pd.Series(1.0, index=ordered_tickers)

Thanks, and great library. For the 50 people on the planet knowing how to wield its power. ;-)

bsdice avatar Sep 03 '24 21:09 bsdice

I am seeing the same warning.

\pypfopt\hierarchical_portfolio.py:138: FutureWarning: Setting an item of incompatible dtype is deprecated and will raise an error in a future version of pandas. Value '[0.41629061 0.41629061 0.41629061 0.41629061 0.41629061 0.41629061]' has dtype incompatible with int64, please explicitly cast to a compatible dtype first. w[first_cluster] *= alpha # weight 1

BeachGuy007 avatar Sep 05 '24 16:09 BeachGuy007