2017-05-16 93 views
-1

嘿所以我有一個Excel文檔,其中包含公司名稱到其各自代碼的映射。我現在有這個功能將公司名稱轉換爲股票代碼

def(ticker): 
    mapping = pd.read_excel('ticker.xlsx',header = 3,parse_cols='A,B') 
     for index,row in mapping.iterrows(): 
      if ticker.upper() in row['Name'].upper().split(): 
       ticker = row['Ticker'] 
    return ticker 

我使用「在」上,而不是「==」是因爲Excel文檔「蘋果」中被列爲「蘋果公司」 4號線的原因並且由於用戶不太可能鍵入我想讓ticker(「apple」)返回「AAPL」。

在上面的代碼中,if語句永遠不會被執行,我對這裏最好的解決方案感到好奇。

+0

您應該發佈一些示例數據,尤其是應該觸發所需輸出的數據。 – DyZ

回答

0

Havnt在之前看過這種類型的語法。必須是nltk語法。

這就是說我會盡力幫助。

如果命令與SQL相同,那麼它意味着完全相等。 ('Apple Inc')中的'Apple'意思是錯誤的。

你想要做一個if('AppleInc like'%Apple%') 或者使用正則表達式的.Match。這是關於我可以提出建議的程度,因爲我不做python。