在两个不同的dataframe python中获取匹配的行

2024-04-27 10:39:01 发布

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

提前感谢-问题是比较csv文件的两个独立数据帧的行;有或没有列标题。 我想将第二个数据帧中的行与第一个数据帧中的行进行匹配。我不能使用合并,因为两者都没有要合并的公用列名

1:第一个数据帧有标题

2:第二个数据帧没有标题

3:得到比赛的位置

我试过这个:

    df1 = pd.read_csv(data1)
    df2 = pd.read_csv(data2)
    def test1():
    for index, rows in df1.iterrows():
        if rows in (df2):
            return nrows 

数据集:

第一个数据集:
first dataset

第二个数据集:
Second dataset


Tags: 文件csv数据in标题readdef公用
1条回答
网友
1楼 · 发布于 2024-04-27 10:39:01

第一个将头添加到第二个dataframe,使用:

df2.columns = df1.columns

或者,更好的方法是,在读取文件时首先使用以下命令定义它们:

df2 = pd.read_csv(data2, header=None, names=df1.columns.tolist())

然后inner merge将它们保留在两个行中相同的行中:

united_df = df1.merge(df2, how='inner')

相关问题 更多 >