您的位置: 网站首页> 大家问> 当前文章
InvalidIndexError: Reindexing only valid with uniquely valued Index objects
老董2021-08-20196围观,112赞
在用pandas做数据拼接的时候可能遇到过如下报错:InvalidIndexError: Reindexing only valid with uniquely valued Index objects。
这个问题我也遇见了,是在使用concat函数让2个df数据横向拼接时遇到的。看报错的意思就是拼接前单个df的索引值不可以有重复。经过测试确实如此。
代码如下(df1和df2相同,横向拼接;df3的index索引特意设为重复值拼接时报错),自行体会。(在用其他函数时可能也会遇到同样的报错,报错原因是一致的)
# -*- coding:UTF-8 -*-
import pandas as pd
df1 = pd.DataFrame([['python66.com', 'dong'], ['baidu.com','li']],
columns=['site', 'author'])
df2 = pd.DataFrame([['python66.com', 'dong'], ['baidu.com','li']],
columns=['site', 'author'])
df = pd.concat([df1,df2],axis=1)
print(df)
print('--------------------')
df3 = pd.DataFrame([['python66.com', 'dong'], ['baidu.com','li']],
columns=['site', 'author'],index=[0,0])
df = pd.concat([df1,df3],axis=1)
print(df)
site author site author
0 python66.com dong python66.com dong
1 baidu.com li baidu.com li
--------------------
Traceback (most recent call last):
File "D:/py3script/pandas_xuexi/test.py", line 16, in <module>
df = pd.concat([df1,df3],axis=1)
File "D:installpyinstalllibsite-packagespandascore
eshapeconcat.py", line 298, in concat
return op.get_result()
File "D:installpyinstalllibsite-packagespandascore
eshapeconcat.py", line 516, in get_result
indexers[ax] = obj_labels.get_indexer(new_labels)
File "D:installpyinstalllibsite-packagespandascoreindexesase.py", line 3171, in get_indexer
raise InvalidIndexError(
pandas.errors.InvalidIndexError: Reindexing only valid with uniquely valued Index objects
很赞哦!
python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群
文章评论
-
InvalidIndexError: Reindexing only valid with uniquely valued Index objects文章写得不错,值得赞赏


