我有一本字典和一张清单。对于列表中的每个键,我想绘制与该键关联的值。
我在 pandas 中有以下代码:
import numpy as np; np.random.seed(22)
import seaborn as sns; sns.set(color_codes=True)
window = int(math.ceil(5000.0 / 100))
xticks = range(-2500,2500,window)
sns.tsplot([mydictionary[k] for k in mylist],time=xticks,color="g")
plt.legend(['blue'])
Run Code Online (Sandbox Code Playgroud)
但是,我得到 KeyError: xxxx
我可以手动删除列表中所有有问题的键,但这需要很长时间。有没有办法可以跳过这个关键错误?
如果您正在寻找一种方法来克服关键错误,请使用try& except。然而,提前清理数据会更优雅。
例子:
mydictionary = {
'a': 1,
'b': 2,
'c': 3,
}
mylist = ['a', 'b', 'c', 'd']
result = []
for k in mylist:
try:
result.append(mydictionary[k])
except KeyError:
pass
print(result)
>>> [1, 2, 3]
Run Code Online (Sandbox Code Playgroud)
在将其用于 seaborn 图中之前,您需要先构建该列表。然后,通过调用传递列表:
sns.tsplot(result ,time=xticks,color="g")
| 归档时间: |
|
| 查看次数: |
4629 次 |
| 最近记录: |