合并两个数据框后,我得到了。
lst=[]
df = reduce(lambda x, y: pd.merge(x, y, on = 'wave',how='inner'), lst)
wave delta_stlines_x EWs_x stlines_x fwhm_x delta_stlines_y EWs_y stlines_y fwhm_y
0 4050.32 -0.018206 24.149970 0.298800 0.075930 -0.008341 22.686130 0.286550 0.074380
1 4208.98 0.002338 44.108770 0.479080 0.086500 0.009903 43.781165 0.483710 0.085080
2 4374.94 -0.001006 86.224040 0.716030 0.113130 -0.001223 87.003280 0.711390 0.114890
3 4379.74 0.005713 31.087380 0.315050 0.092700 0.003867 29.657950 0.307750 0.090530
4 4398.01 -0.003783 46.448520 0.507600 0.085960 -0.017225 53.260190 0.498690 0.100330
5 4502.21 -0.001863 61.331050 0.563750 0.102200 -0.001528 60.578470 0.562730 0.101130
现在,我想取列wave
以外的相同名称的列的均值。预期的结果应该像这样:
wave delta_stlines EWs stlines fwhm
0 4050.32 x+y x+y x+y x+y
1 4208.98 x+y x+y x+y x+y
2 4374.94 x+y x+y x+y x+y
3 4379.74 x+y x+y x+y x+y
4 4398.01 x+y x+y x+y x+y
5 4502.21 x+y x+y x+y x+y
这里x + y,即column_x和column_y在输入数据帧中共享相同名称的平均值。
我该如何解决?
答案 0 :(得分:3)
您可以对groupby
和axis=1
进行split
之前的列{{1}
groupby