擅长:python、mysql、java
<p>我假设您只希望在Date1中日期匹配时保留['Date2','Log2']和['Date3','Log3']的值。在</p>
<p>您可以将不同的列读入不同的数据帧并使用<code>merge</code>。然后筛选以仅保留Date1列不为null的行。在</p>
<pre><code>df
>>>
Date1 Log1 Date2 Log2 Date3 Log3
0 01.01.2000 1000 02.01.2000 2000 01.01.2000 3000
1 02.01.2000 1050 03.01.2000 1950 02.01.2000 3020
2 03.01.2000 1100 04.01.2000 2000 03.01.2000 3000
df1 = df[['Date1', 'Log1']]
df2 = df[['Date2', 'Log2']]
df3 = df[['Date3', 'Log3']]
df_out = df1.merge(df2, how='outer', left_on='Date1', right_on='Date2')
df_out = df_out.merge(df3, how='outer', left_on='Date1', right_on='Date3')
df_out = df_out[df_out['Date1'].notnull()]
df_out
>>>
Date1 Log1 Date2 Log2 Date3 Log3
0 01.01.2000 1000.0 NaN NaN 01.01.2000 3000.0
1 02.01.2000 1050.0 02.01.2000 2000.0 02.01.2000 3020.0
2 03.01.2000 1100.0 03.01.2000 1950.0 03.01.2000 3000.0
</code></pre>