I have looked at the following post, but did not help: How to deal with SettingWithCopyWarning in Pandas
My question:
I have this dataframe called sample
        PERMNO  date    SHRCD   EXCHCD  TICKER  COMNAM  FACPR   PRC SHROUT  OPENPRC         marketcap
151421  10113   2010-07-21  73.0    4.0 AADR    ADVISORSHARES TRUST 0.0 24.70   100.0   25.10   2470.0
151422  10113   2010-07-22  73.0    4.0 AADR    ADVISORSHARES TRUST 0.0 25.26   100.0   25.42   2526.0
151423  10113   2010-07-23  73.0    4.0 AADR    ADVISORSHARES TRUST 0.0 25.28   100.0   25.54   2528.0
151424  10113   2010-07-26  73.0    4.0 AADR    ADVISORSHARES TRUST 0.0 25.37   100.0   25.40   2537.0
151425  10113   2010-07-27  73.0    4.0 AADR    ADVISORSHARES TRUST 0.0 25.29   100.0   25.25   2529.0
... ... ... ... ... ... ... ... ... ... ... ...
153292  10113   2017-12-22  73.0    4.0 AADR    ADVISORSHARES TRUST 0.0 58.93   2650.0  58.80   156164.5
153293  10113   2017-12-26  73.0    4.0 AADR    ADVISORSHARES TRUST 0.0 58.86   2650.0  58.69   155979.0
153294  10113   2017-12-27  73.0    4.0 AADR    ADVISORSHARES TRUST 0.0 58.83   2650.0  58.85   155899.5
153295  10113   2017-12-28  73.0    4.0 AADR    ADVISORSHARES TRUST 0.0 58.75   2650.0  59.07   155687.5
153296  10113   2017-12-29  73.0    4.0 AADR    ADVISORSHARES TRUST 0.0 58.85   2850.0  59.08   167722.5
1570 rows × 11 columns
I want to create a new row named 10113 which is a copy of market. And from column [1::] I want it to be the mean of the market cap.
But I get a warning
C:\Users\waahm\AppData\Local\Temp/ipykernel_8464/2959211184.py:1: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame
See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  sample['marketcap'][1::] = marketcap_mean
My code is:
sample[10113] = sample['marketcap'].copy()
marketcap_mean = sample['marketcap'][1::].mean()
sample['marketcap'][1::] = marketcap_mean
How can I get rid of the warning? And what am I doing wrong?
 
    