这很可能很容易纠正,不幸的是,我是 python 新手,需要一些帮助来解决它。
我运行以下代码...
import eikon as ek
import pandas as pd
import xlwings as xw
ek.set_app_id("secretpasswordstring")
# In[2]:
isins = pd.read_excel(r'W:\L\BDTP\Products\FSA_DAC_Updates\DAC_TOOL.xlsm','ISIN_Equity',usecols='B').dropna()
rics, err = ek.get_data(isins['ISIN'].tolist(),['TR.PrimaryRic'])
rics = rics[rics['Primary Issue RIC']!='']
rics = rics[~rics['Primary Issue RIC'].str.contains('^',regex=False)]
riclist = rics['Primary Issue RIC'].tolist()
riclist
...创建此错误消息:
runfile('W:/L/BDTP/Products/FSA_DAC_Updates/percent change (1).py', wdir='W:/L/BDTP/Products/FSA_DAC_Updates') Traceback(最近一次通话最后):
文件“”,第 1 行,在 runfile('W:/L/BDTP/Products/FSA_DAC_Updates/percent change (1).py', wdir='W:/L/BDTP/Products/FSA_DAC_Updates')
文件“C:\Python\winpython_3_5_4_1_QT5\python-3.5.4.amd64\lib\site-packages\spyder\utils\site\sitecustomize.py”,第 710 行,运行文件 execfile(文件名,命名空间)
文件“C:\Python\winpython_3_5_4_1_QT5\python-3.5.4.amd64\lib\site-packages\spyder\utils\site\sitecustomize.py”,第 101 行,在 execfile exec(compile(f.read(), filename , 'exec'), 命名空间)
文件“W:/L/BDTP/Products/FSA_DAC_Updates/percent change (1).py”,第 18 行,在 rics 中,err = ek.get_data(isins['ISIN'].tolist(),['TR.PrimaryRic '])
文件“C:\Python\winpython_3_5_4_1_QT5\python-3.5.4.amd64\lib\site-packages\eikon\data_grid.py”,第 125 行,在 get_data check_for_string_or_list_of_strings(instruments, 'instruments')
文件“C:\Python\winpython_3_5_4_1_QT5\python-3.5.4.amd64\lib\site-packages\eikon\tools.py”,第 57 行,在 check_for_string_or_list_of_strings 中引发 ValueError('参数 {0} 中的所有项目都应该是数据类型字符串,找到 {0}'.format(name,[type(v) for v in parameter]))
ValueError:参数instruments中的所有项目都应该是数据类型字符串,找到instruments
为了解决这个错误,我需要做什么?为什么会出现?我的印象是,我一直在传递字符串,因为我输入的所有数据都是字符串(12 个字符的 ISIN)。