如何解决在两列中查找相同日期并根据相同日期联接两个数据框的行

时间:2018-12-20 03:31:02

标签: python python-3.x pandas

我试图合并两个数据帧,我在df1中有date列,在df2中有date1列。我想将df1列日期的第一个值与df2 date1列的所有值进行比较,如果在date2中找到的相似值只是将df2的相似值行组合到df1日期的第一行。然后对df1日期列的第二个值执行相同操作,依此类推。...如果发现的值超过一次,则添加行多于一个

我已经尝试过循环,如果有条件,但结果却很奇怪,许多行带有NAN,并且数据帧行增加了

all_df=pd.DataFrame()

df1=pd.read_csv('.csv')

df2=pd.read_csv('.csv')

for i in range(len(df1)):

    for j in range(len(df2)):

        if df1['date1'].iloc[i] == df2['date'].iloc[j]:        
            print('yes')


            df=pd.concat([df1.iloc[[i]],df2.iloc[[j]]],axis=1)
            all_df=all_df.append(df)
        else:
            print('no')

我只希望df1 date和df2 date2相同的行。

1 个答案:

答案 0 :(得分:0)

https://pandas.pydata.org/pandas-docs/stable/merging.html#database-style-dataframe-joining-merging

labels:[['Arts Language', 'and Communication'], 'nextLabel', 'otherLabel']