我有两个数据框。 df1的形状为(64,10),而df2的形状为(64,1)。
我一直试图合并这两个,但是显示错误。
已经困扰了我一段时间了。谢谢!
pdff = pd.concat([df1, df2], ignore_index=True, sort=False, axis=1)
File "C:\Python37\lib\site-packages\pandas\core\reshape\concat.py", line 287, in concat
return op.get_result()
File "C:\Python37\lib\site-packages\pandas\core\reshape\concat.py", line 503, in get_result
mgrs_indexers, self.new_axes, concat_axis=self.bm_axis, copy=self.copy,
File "C:\Python37\lib\site-packages\pandas\core\internals\concat.py", line 84, in concatenate_block_managers
return BlockManager(blocks, axes)
File "C:\Python37\lib\site-packages\pandas\core\internals\managers.py", line 149, in __init__
self._verify_integrity()
File "C:\Python37\lib\site-packages\pandas\core\internals\managers.py", line 326, in _verify_integrity
raise construction_error(tot_items, block.shape[1:], self.axes)
ValueError: Shape of passed values is (4159, 11), indices imply (127, 11)
答案 0 :(得分:-1)
您似乎需要使用“ join”。试试这个:
df1.join(df2,on="key_colname")
也有用于设置后缀的参数(lsuffix和rsuffix),当然还有如何加入(“ how”参数可以设置为:left,right,external,inner。默认情况下为left)。