python - 如何合并两个数据帧并正确索引生成的数据帧(从零开始到行数-1)

标签 python pandas

假设我有两个数据框:

df1:

  0 1 2 3
0 2 2 2 2
1 2 2 2 2
2 3 1 1 1
3 3 1 1 1
4 3 1 1 1
5 3 1 1 1

df2:

  0 1 2 3
0 9 9 9 9
1 9 9 9 9
2 9 9 9 9
3 9 9 9 9
4 9 9 9 9

我想把它作为它们的组合:

   0 1 2 3
0  2 2 2 2
1  2 2 2 2
2  3 1 1 1
3  3 1 1 1
4  3 1 1 1
5  3 1 1 1
6  9 9 9 9
7  9 9 9 9
8  9 9 9 9
9  9 9 9 9
10 9 9 9 9

我试过 df = df1.append(df2) 但我得到的结果是:

  0 1 2 3
0 2 2 2 2
1 2 2 2 2
2 3 1 1 1
3 3 1 1 1
4 3 1 1 1
5 3 1 1 1
0 9 9 9 9
1 9 9 9 9
2 9 9 9 9
3 9 9 9 9
4 9 9 9 9

如何获得我想要的版本?

最佳答案

如果我正确理解您的样本数据帧,您基本上需要连接两个帧?

尝试

df = pd.concat([df1,df2],ignore_index=True)
    print(df)
    0   1   2   3
0   2   2   2   2
1   2   2   2   2
2   3   1   1   1
3   3   1   1   1
4   3   1   1   1
5   3   1   1   1
6   9   9   9   9
7   9   9   9   9
8   9   9   9   9
9   9   9   9   9
10  9   9   9   9

如果关于你自己的代码,你很接近,但你需要添加 ignore_index 子句,这将为你创建一个新索引

df = df1.append(df2,ignore_index=True)
print(df)
    0   1   2   3
0   2   2   2   2
1   2   2   2   2
2   3   1   1   1
3   3   1   1   1
4   3   1   1   1
5   3   1   1   1
6   9   9   9   9
7   9   9   9   9
8   9   9   9   9
9   9   9   9   9
10  9   9   9   9

关于python - 如何合并两个数据帧并正确索引生成的数据帧(从零开始到行数-1),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56153637/

相关文章:

python - 如何用PIL改变图像的像素颜色?

python - pandas 过滤不包含任何内容的日期时间列

python - pandas 中的笛卡尔积

python - 即使在我注销 SSH 后如何在后台运行脚本?

python - 我可以使用 Python 将内存中的对象上传到 FTP 吗?

当变量是字符串时,Python解释器将变量定义为tulpe?

python - Pandas 数据框索引匹配

python - 如何有效地净化pandas数据框?

python - 如何读取 2 列 csv 文件并将列绘制为 x 与 y 值

sql-server - Pandas read_sql 在读取时更改大量 ID