Hi,
I'm trying to get ESG indicator data for S&P 500 for 2019. I have tried to get the data from Python. It gives me around 350 values and the rest, 155, are missing values. When I download the same data from Screener app I get much more data, almost 505 observations are covered. I was wondering what could be the reason and whether I can get help to solve this problem.
I used the following code to obtain the data for 2019 in Python:
First I obtain the list of S&P 500 firms at the beginning of 2019:
sp2019, err = ek.get_data('0#.SPX(20190101)', 'TR.IndexConstituentRIC',)
Then I get the PermID for these firms:
sp2019.columns = ['inst','ric']
ric19= ek.get_symbology(sp2019.inst.tolist())
Then I construct a list including the PermIDs for these firms:
list19= list(ric19.OAPermID)
And using this list I obtain ESG indicator data for 2019 (I download all the 186 indicators and ESG category scores, here I pasted the first few indicators to be brief):
data2019, err=ek.get_data(list19,['TR.CommonName','TR.RIC','TR.GICSIndustry',
'TR.TRESGScore(Period=FY2019,Frq=FY).date',
'TR.AnalyticEqualShareholderRightsScore(Period=FY2019,Frq=FY)',
'TR.AgrochemicalProductsScore(Period=FY2019,Frq=FY)',
'TR.AnalyticAntiTakeoverDevicesScore(Period=FY2019,Frq=FY)',
'TR.AnalyticAuditCommIndScore(Period=FY2019,Frq=FY)',
'TR.AnalyticAuditCommMgtIndScore(Period=FY2019,Frq=FY)',
'TR.AnalyticBoardAffiliationsScore(Period=FY2019,Frq=FY)',
'TR.AnalyticBoardAttendanceScore(Period=FY2019,Frq=FY)']
Thank you in advance for the help.
Mahdieh