在使用PyCharm 2023.2.3运行代码的时候,发现seaborn中的pairplot()函数中的参数height报错:pairplot() got an unexpected keyword argument 'height'(百度翻译:pairplot()获得了意外的关键字参数“height”)。
查阅相关资料得知,pairplot()是seaborn的一个函数,官方API给出的参数定义为:seaborn.pairplot,如下图:
很明显,pairplot()里面的定义应该是有参数height的,而且默认值为2.5,这个应该是最新版的定义。但PyCharm2023.2.3的代码报错提示却如下,里面的seaborn版本似乎把height变成了size(我也不确定具体是不是,但是那时候我在PyCharm2023.2.3里面安装的seaborn版本却是不是最新的。感兴趣的可以自己试着把height改成size然后执行一下看一看对不对,这个定义的变化也是我后来才发现的)。
当然这个问题在我后来把我代码里面height=4删掉似乎也可以得到解决(参考链接:已解决(机器学习填补数值型缺失值时报错)TypeError: init() got an unexpected keyword argument ‘axis’)。
但是我仍认为是seaborn版本不对的问题,因为网上也有人说,不同版本的seaborn中定义的pairplot函数的参数类型也许会不同。于是我就尝试着在终端用conda对seaborn的版本进行更新,好家伙结果发现我的conda用不了了,也就是出现了InvalidVersionSpecError: Invalid version spec: =2.7报错:
试过清理缓存以及试图升级conda(Anaconda自带)、换源等等都不行,甚至产生了更多其他的报错(最后我甚至连conda install anaconda-clean -y
都用不了......)。于是我只能使用Anaconda内嵌的程序Uninstall-Anaconda3.exe卸载了Anaconda并检查环境和自带的python是否被清理干净以及C:\Users\纸白下是否存在备份文件,并且用火绒自带的垃圾清理-注册表清理将注册表将垃圾全部清理掉,最后清空回收站,重启电脑之后,又进行其他版本Anaconda的下载。
最后是下载了21年4月的版本然后成功的(下载链接:Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror)
安装成功之后conda和python的版本信息和conda操作也能够正常执行,如下图所示:
这里的Warning报错的解决可以尝试这篇文章:【安装库】WARNING: A newer version of conda exists.
安装好之后,在PyCharm 2023.2.3配置好Anaconda自带的python解释器之后竟然神奇的发现pairplot() got an unexpected keyword argument 'height'报错竟然也跟着消失了。
参考链接:
Anaconda||(踩坑无数,含泪总结!!!)Anaconda的卸载与安装(tensorflow+Keras+spyder+添加镜像源)