如何使用 python 检索代码列表的部门和行业?

how to retrieve sector and industry for a list of tickers with python?

我有一份来自收入报告的代码列表(下面:tick1)。 我想在创建数据框时在代码旁边添加“简称”、“部门”和“行业”。 不幸的是,这些列总是有点混乱,而且它们没有正确匹配。例如:VFC --> 部门:技术;行业:半导体,这是错误的。应该是行业:周期性消费;行业:服装制造

下面是我的代码:你能帮忙调整一下吗?

---要阅读的代码--- 将 yfinance 导入为 yf

with open("/Users/Doc/AB/Earnings/tickers.txt") as fh:
    tick1 = fh.read().split()

txt 文件中的代码 ABOS ACRX ADI公司 ADMP 道西 空气能 AGYS AINV 阿尔博 ALLT AMAT 安培 奥卓 阿科 区域经济合作委员会 阿兹吉 阿泰 汽车 爱华 AXDX 呸 巴巴 BBWI 比尔 北京 BKYI BLBX BPCGY BPTH BRDS BZFD 民航总局 计算机辅助工程 CALT CCHWF CCSI CELC CFRHF CGEN 中央情报局 CLSN CMRX CRLBF CRXT CSCO CSWI CVSI CWBHF CWBR 解码器 达达 德 甲板 DESP DLO 斗鱼 夏令时 双元组 东 电子生物反应器 EBR.B EDAP 享受 EV电视 经验值 法思 佛罗里达州 弗洛 金融服务机构 FTK 远紫外 FXLV 生成对抗网络 GBOX 全球数据系统 GLBE 全球 GNLN GOED GOGL 抓 格拉夫 GRCL 高清 钩 HPK 虎牙 HWKN 海尔 野山羊 集成电路 IKT IMPL INLB INLX INVO 爱因斯坦 离子Q IPW IPWR 伊森 国际贸易中心 日本商务部 京东 金华兴 JMIA 卡拉 KBNT 按键 KMDA 是 KSLF KSS 库尔 低的 LTRY 露娜 LVLU 标记 主战坦克 MCG MCLD MDWD MDWT 米吉 米罗 MNDY 导弹防御系统 MNRO MSADY MSGM 三菱日联 MVST NEXCF 新一代测序 诺克斯 十一月号 NRDY NRGV 努 NXGN OBSV OEG OMQS 欧能 PANW PASG PCYG 梨 PLNHF PLX PTE考试 PTN PXS QIPT QRHC QTEK 快速 RCRT RDY 稀土元素 芦苇 雷克尔 RKLB RMED RMTI 罗斯特 RSKD 瑞亚 SANW SCVL SDIG SE SHLS 水泵 SHWZ 滑翔机 SNPS SPRO 平方米 SRAD 系统系统 顺力 新伟 超级跑车 同步号 SYRS TCEH TCRT 贸易控制系统 台积电 TGT THBRF 天健兴 特科米 TLLTF TME TRMR 台积电 安全与健康管理局 TTWO TXMD USWS VBLT 动词 VEV VFC 贵宾会 VJET VOXX 显像机 VVOS VWE VYGVF 维恩特 韦伯 WEDXF 微乔 维克斯 仓库管理系统 WMT WRBY 所见即所得 亚拉 你 以星

---添加简称、部门、行业--- 从 yahooquery 导入 Ticker 将 pandas 导入为 pd

symbols = tick1

tickers = Ticker(symbols, asynchronous=True)

datasi = tickers.get_modules("summaryProfile quoteType")
dfsi = pd.DataFrame.from_dict(datasi).T

dataframes = [pd.json_normalize([x for x in dfsi[module] if isinstance(x, dict)]) for 
module in ['summaryProfile', 'quoteType']]

dfsi = pd.concat(dataframes, axis=1)
dfsi
import pandas as pd
from yahooquery import Ticker

symbols = ['TSHA', 'GRAMF', 'VFC', 'ABOS', 'INLX', 'INVO', 'IONM', 'IONQ']

tickers = Ticker(symbols, asynchronous=True)

datasi = tickers.get_modules("summaryProfile quoteType")
dfsi = pd.DataFrame.from_dict(datasi).T
dataframes = [pd.json_normalize([x for x in dfsi[module] if isinstance(x, dict)]) for
module in ['summaryProfile', 'quoteType']]

dfsi = pd.concat(dataframes, axis=1)

dfsi = dfsi.set_index('symbol')
dfsi = dfsi.loc[symbols]

print(dfsi[['industry', 'sector']])

输出

                                      industry             sector
symbol                                                           
TSHA                             Biotechnology         Healthcare
GRAMF   Drug Manufacturers—Specialty & Generic         Healthcare
VFC                      Apparel Manufacturing  Consumer Cyclical
ABOS                             Biotechnology         Healthcare
INLX                      Software—Application         Technology
INVO                           Medical Devices         Healthcare
IONM                   Medical Care Facilities         Healthcare
IONQ                         Computer Hardware         Technology

尝试以下操作。将列“symbol”设置为索引。 并将其发送到代码列表。再一次,你需要检查。

我 运行 代码 'VFC' 好几次:VFC 行业---服装制造,部门---消费者周期性。