其他
bidict库 | Python双向映射功能,让字典更好用
字典是一种键值对key-value pair数据结构, 用key查询到对应的值value, 但不能用value查到对应的key。但有时我们面对的分析任务,需要用value查到对应的key, bidict可以帮我们实现这一特性。
一、安装
pip install bidict
二、快速开始
2.1 基本操作
from bidict import bidict
test_data = bidict({
'华为': 'Huawei',
'比亚迪': 'BYD',
'吉利': 'Geely',
'微软': 'Microsoft',
'苹果': 'Apple'
})
print(test_data['华为'])
print(test_data.inverse['Microsoft'])
Run
Huawei
微软
2.2 get方法
跟Python字典类似,如果字典中没有对应的key,直接查询会出现KeyError错误。
test_data['三星']
Run
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
Cell In[5], line 1
----> 1 test_data['三星']
File /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/bidict/_base.py:523, in BidictBase.__getitem__(self, key)
521 def __getitem__(self, key: KT) -> VT:
522 """*x.__getitem__(key) ⟺ x[key]*"""
--> 523 return self._fwdm[key]
KeyError: '三星'
使用get方法则可避免错误发生。
test_data.get('三星', 'missing')
Run
missing
2.3 update方法
update方法可以用来
更改key的value 新增key-value-pair
#更新值
test_data.update(华为='HUAWEI')
#新增key-value-pair
test_data.update(三星='Samsung')
print(test_data['华为'])
print(test_data['三星'])
Run
HUAWEI
Samsung
2.4 pop方法
test_data.pop('三星')
Run
'Samsung'
此时再查看会发现test_data已经没有了三星相关的键值对
test_data
Run
bidict({'华为': 'HUAWEI',
'比亚迪': 'BYD',
'吉利': 'Geely',
'微软': 'Microsoft',
'苹果': 'Apple'})
精选内容
数据集 | 3571万条专利申请数据集(1985-2022年)
预训练模型 | 使用1000w专利摘要训练word2vec模型,可用于开发词典
使用中文MD&A数据集训练word2vec预训练模型, 可扩展或新建会计金融等领域的情感词典
预训练模型 | 使用1000w专利摘要训练word2vec模型,可用于开发词典
数据集 | 2001-2022年A股上市公司年报&管理层讨论与分析
管理世界 | 用正则表达式、文本向量化、线性回归算法从md&a数据中计算 「企业融资约束指标」
中国管理科学 | 使用业绩说明会文本数据测量上市公司前瞻性信息
数据集 | 2001-2022年A股上市公司年报&管理层讨论与分析
数据集 | 200w政府采购合同公告明细数据(1996.6-2022.12)