Eikon Python API

https://pypi.org/project/eikon/
Version 1.0.1.
When ask CUSIP, API returns formatted data.
For example
IMAX,4.5245e+113 (WRONG, should be 45245E109)
NNFC,6.3008e+113 (WRONG, should be 63008E109)
AAPL,37833100 (WRONG, should be 0 in the begin)
Problem in method get_data_frame(data_dict, field_name=False)
246 string should be deleted:
#df = df.apply(pd.to_numeric, errors='ignore')
Then result is OK. Please fix it.
Best Answer
-
@vsoloviev et all,
The data is retrieved from a RESTful Web service and is delivered as JSON. get_data function parses JSON and constructs pandas dataframe. To make numeric data ready available for calculations get_data function applies pandas to_numeric method on the dataframe. The side effect of it is that any data pandas to_numeric method can interpret as numeric is returned as float64 or int64 including what is actually intended to be a string such as CUSIPs in the example on this thread. We could remove to_numeric method from get_data function. But then users may need to implement additional code before applying calculations on the data that is meant to be numeric.
We welcome suggestions from the community on how to best handle this in the API. Do you think calling pandas to_numeric method is unnecessary or redundant? Or can you think of a better way to make the dataframe returned by get_data method ready to use?
In the meantime as an immediate workaround you can use raw_output=True parameter in get_data function, which will result in the function returning JSON instead of dataframe. You can then parse JSON as you see fit. Alternatively you could modify the code in get_data_frame function in your copy of data_grid.py (e.g. remove the line that applies to_numeric method on the dataframe).0
Answers
-
Hi @vsoloviev,
I just confirmed your findings and will report this to the Product Manager. Thanks for raising this.
0 -
Hello. Any news?
0 -
Hi @vsoloviev
I am sorry, there is no update at the moment.
Moderators will update you again once we have any relevant information.
0 -
Hi Alex.
I think that it is good idea to return raw data without any transforming. Just plain raw. No need any casts.
0
Categories
- All Categories
- 6 AHS
- 36 Alpha
- 166 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 33 Data Model Discovery
- 682 Datastream
- 1.4K DSS
- 613 Eikon COM
- 5.2K Eikon Data APIs
- 10 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- 3 Trading API
- 2.9K Elektron
- 1.4K EMA
- 248 ETA
- 552 WebSocket API
- 37 FX Venues
- 14 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 23 Messenger Bot
- 3 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 275 Open PermID
- 44 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 22 RDMS
- 1.8K Refinitiv Data Platform
- 625 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 26 DACS Station
- 121 Open DACS
- 1.1K RFA
- 104 UPA
- 191 TREP Infrastructure
- 228 TRKD
- 915 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 83 Workspace SDK
- 11 Element Framework
- 5 Grid
- 18 World-Check Data File
- 1 Yield Book Analytics
- 46 中文论坛