Python/Pandas:基于另一个数据帧过滤和组织数据帧的行和列

Python/Pandas:基于另一个数据帧过滤和组织数据帧的行和列,python,pandas,dataframe,indexing,reindex,Python,Pandas,Dataframe,Indexing,Reindex,我有两个数据帧,像下面的df1,df2。 我想: 过滤器df1:即删除行和列,使其具有与df2相同的索引元素和列。不应修改表中保留的列和行的元素 此外,我想组织这个“过滤”数据帧的行和列,使其具有与df2相同的行和列顺序 数据帧df1是: 指数 x_3 x_1 x_2 10 110 126 112 11 131 140 143 12 130 128 116 13 118 150 125 14 102 117 110 15 103 105 148 16 116 114 114 17 120 1

我有两个数据帧,像下面的df1,df2。 我想:

  • 过滤器df1:即删除行和列,使其具有与df2相同的索引元素和列。不应修改表中保留的列和行的元素
  • 此外,我想组织这个“过滤”数据帧的行和列,使其具有与df2相同的行和列顺序
数据帧df1是:

指数 x_3 x_1 x_2 10 110 126 112 11 131 140 143 12 130 128 116 13 118 150 125 14 102 117 110 15 103 105 148 16 116 114 114 17 120 132 110 您可以使用根据
df2
索引和
列,对
df1
索引和
列进行整合:

df3 = df1.reindex_like(df2)

您可以使用根据
df2
索引和
列,对
df1
索引和
列进行整合:

df3 = df1.reindex_like(df2)

Shubham的回答很像蟒蛇。使用loc也是从第一原则出发的一种简单方法


Shubham的回答很像蟒蛇。使用loc也是从第一原则出发的一种简单方法。

考虑到您的索引是唯一的(即没有重复项);因为复制会破坏某些方法。另外,当您说“像df1一样组织df3的列”时,这被称为“df3应该与df1具有相同的列顺序”。可能的重复:相关:也假设您的索引是唯一的(即没有重复);因为复制会破坏某些方法。另外,当你说“像df1一样组织df3的列”时,也就是说“df3应该和df1有相同的列顺序”。可能重复:相关:也++ve对于好的答案Shubham jee,我可以问你是如何学会这么好的顺序的吗,先生?谢谢。谢谢@RavinderSingh13:-)我想学习熊猫最好的方法就是多练习。我也以类似的方式学习了熊猫,在这里回答了很多问题(这真的很有帮助!),并且总是从其他好的问题/答案中学习。这里有很多很好的规范性答案,这确实有助于理解基本概念。当然,我可以理解实践,但是当我开始阅读文档时,它太大了,你能不能给我一些基本的指导和一些重要的功能,让我从巴迪开始,谢谢你,干杯(继续努力回答好的问题)@RavinderSingh13你可以开始练习基础知识,如果你偶然发现了什么,请告诉我我非常乐意帮助你。你可以在需要帮助的时候加入并打电话给我:)++ve要回答好的问题Shubham jee,我可以问你是怎么学会这么好的熊猫的吗,先生?谢谢。谢谢@RavinderSingh13:-)我想学习熊猫最好的方法就是多练习。我也以类似的方式学习了熊猫,在这里回答了很多问题(这真的很有帮助!),并且总是从其他好的问题/答案中学习。这里有很多很好的规范性答案,这确实有助于理解基本概念。当然,我可以理解实践,但是当我开始阅读文档时,它太大了,你能不能给我一些基本的指导和一些重要的功能,让我从巴迪开始,谢谢你,干杯(继续做好回答“好”的工作)@RavinderSingh13你可以开始练习基础知识,如果你偶然发现了什么,请告诉我我非常乐意帮助你。你可以随时加入我,只要你需要帮助:)
df1.loc[df2.index, df2.columns]