python - 如何防止 pd.concat 在同名列后插入 `.1` ?

标签 python python-3.x pandas

我正在尝试将列名称重叠的两个数据集合并在一起。

例如这样:

df1:

col1   col2
aa     aa
bb     bb

df2:
col2   col3
cc     dd

new_df = pd.concat([df1,df2],axis=1)

new_df:

    col1   col2    col3
    aa     aa
    bb     bb
           cc     dd

当我在代码中运行上面的行时,我得到如下内容:

  col1   col2   col2.1   col3
    aa     aa     nan
    bb     bb     nan
           cc     nan     dd

如何防止出现 .1 并强制 pd.concat 匹配列名并插入数据?

最佳答案

您沿错误轴连接。此处您使用了轴,而您想要在索引轴上连接:

>>> pd.concat([df1, df2], <b>axis='rows'</b>)
  col1 col2 col3
0   aa   aa  NaN
1   bb   bb  NaN
0  NaN   cc   dd

因此,通过指定 axis=0axis='rows'axis='index' 或完全省略,列被“分组”,并且您“垂直”连接。

关于python - 如何防止 pd.concat 在同名列后插入 `.1` ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53034774/

相关文章:

python - Python 中的非虚拟继承

python - 为什么在 Django 中复制发布数据而不是直接使用它?

python - 更改数据框日期列的日期格式

python - 从 Pandas 列中的元素中提取文本,写入新列

Python:如何使用 networkx 创建与另一个数据框对应的图形?

python - Exscript:如何在交互式和非交互式 session 之间切换?

python - 使用动态值翻译模板中的字符串

python - 在 CPython 中搜索 DLL 的变量 PATH

python-3.x - 试图了解 keras 的分词器 texts_to_sequences

Python3 - 将字符串转换为字典