使用另一个数据帧中的索引替换数据帧中的行

2024-10-05 12:25:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个具有相同结构的数据帧dfdf_adf_adf的子集,我需要将其重新整合到df。本质上,df_a具有来自df的各种已被操作的行(具有不同的索引)

下面是每个dfdf_a的索引示例。它们都有相同的列结构,所以所有的列都是相同的,只有行和行的idex不同

>> df
index  ..  other_columns  ..
0   
1
2
3
. .
9999
10000
10001

[10001 rows x 20 columns]

>> df_a
index  ..  other_columns  ..
5
12
105
712
. .
9824
9901
9997

[782 rows x 20 columns]

因此,我只想用df_a中相应的行覆盖df中索引为df_a的行。我签出了Replace rows in a Pandas df with rows from another dfreplace rows in a pandas data frame,但它们都没有告诉我如何使用另一个数据帧的索引来替换行中的值


Tags: columns数据in示例pandasdfindex结构
2条回答

大致如下:

df.loc[df_a.index, :] = df_a[:]

我不知道这是否需要您的意思,因为您需要更具体,但是如果第一个数据帧被修改为具有不同索引的新数据帧,那么您可以使用以下代码重置索引:

import pandas as pd

df_a = pd.DataFrame({'a':[1,2,3,4],'b':[5,4,2,7]}, index=[2,55,62,74])
df_a.reset_index(inplace=True, drop=True)
print(df_a)

PRINTS:
   a  b
0  1  5
1  2  4
2  3  2
3  4  7

相关问题 更多 >

    热门问题