I am trying to add a row from one data frame to another on shared column values (in this case day of year - DOY).
I have tried merge, concat, and join functions, but not getting the results desired.
I have tried all combinations of these given the help documentation https://pandas.pydata.org/pandas-docs/stable/user_guide/merging.html , but to no avail...
DF1 =
DOY Model Global Diffuse month season
0 1 Standard Mean 0.2968 0.893733 1 Winter
1 2 Standard Mean 0.3692 0.806867 1 Winter
2 3 Standard Mean 0.3608 0.818200 1 Winter
3 4 Standard Mean 0.2725 0.914178 1 Winter
4 5 Standard Mean 0.2323 0.943211 1 Winter
5 6 Standard Mean 0.2510 0.929867 1 Winter
6 7 Standard Mean 0.2264 0.946467 1 Winter
7 8 Standard Mean 0.2294 0.944811 1 Winter
8 9 Standard Mean 0.2731 0.913700 1 Winter
9 10 Standard Mean 0.2336 0.942478 1 Winter
10 11 Standard Mean 0.3299 0.857322 1 Winter
11 12 Standard Mean 0.2996 0.891222 1 Winter
12 13 Standard Mean 0.2470 0.932567 1 Winter
13 14 Standard Mean 0.2567 0.925911 1 Winter
14 15 Standard Mean 0.3993 0.764089 1 Winter
15 16 Standard Mean 0.3009 0.890289 1 Winter
16 17 Standard Mean 0.3578 0.822156 1 Winter
17 18 Standard Mean 0.3513 0.830600 1 Winter
18 19 Standard Mean 0.3143 0.875544 1 Winter
19 20 Standard Mean 0.4353 0.708689 1 Winter
20 21 Standard Mean 0.3430 0.841233 1 Winter
21 22 Standard Mean 0.3390 0.846267 1 Winter
22 23 Standard Mean 0.4578 0.672033 1 Winter
23 24 Standard Mean 0.3411 0.843622 1 Winter
24 25 Standard Mean 0.3694 0.806567 1 Winter
25 26 Standard Mean 0.4146 0.741089 1 Winter
26 27 Standard Mean 0.3815 0.789789 1 Winter
27 28 Standard Mean 0.2977 0.892911 1 Winter
28 29 Standard Mean 0.2377 0.940111 1 Winter
29 30 Standard Mean 0.3342 0.852067 1 Winter
...
DF2 =
DOY Model Global Diffuse month season
0 1 Orgill_Hollands 0.2968 0.9261 1 Winter
1 1 Reindl_Et_Al 0.2968 0.9464 1 Winter
2 1 Boland_Et_Al 0.2968 0.9099 1 Winter
3 1 Hawlader 0.2968 0.8212 1 Winter
4 1 Miguel_Et_Al 0.2968 0.9336 1 Winter
5 1 Karatasou_Et_Al 0.2968 0.8109 1 Winter
6 1 Erbs_Et_al 0.2968 0.9506 1 Winter
7 1 Chandra 0.2968 0.9139 1 Winter
8 1 Oliveira_Et_Al 0.2968 0.9024 1 Winter
9 1 Soares_Et_Al 0.2968 0.8547 1 Winter
10 2 Orgill_Hollands 0.3692 0.8777 1 Winter
11 2 Reindl_Et_Al 0.3692 0.8334 1 Winter
12 2 Boland_Et_Al 0.3692 0.8499 1 Winter
13 2 Hawlader 0.3692 0.7343 1 Winter
14 2 Miguel_Et_Al 0.3692 0.8507 1 Winter
15 2 Karatasou_Et_Al 0.3692 0.7269 1 Winter
16 2 Erbs_Et_al 0.3692 0.8818 1 Winter
17 2 Chandra 0.3692 0.8362 1 Winter
18 2 Oliveira_Et_Al 0.3692 0.7970 1 Winter
19 2 Soares_Et_Al 0.3692 0.7516 1 Winter
20 3 Orgill_Hollands 0.3608 0.8931 1 Winter
21 3 Reindl_Et_Al 0.3608 0.8475 1 Winter
22 3 Boland_Et_Al 0.3608 0.8583 1 Winter
23 3 Hawlader 0.3608 0.7446 1 Winter
24 3 Miguel_Et_Al 0.3608 0.8621 1 Winter
25 3 Karatasou_Et_Al 0.3608 0.7371 1 Winter
26 3 Erbs_Et_al 0.3608 0.8919 1 Winter
27 3 Chandra 0.3608 0.8469 1 Winter
28 3 Oliveira_Et_Al 0.3608 0.8106 1 Winter
29 3 Soares_Et_Al 0.3608 0.7648 1 Winter
...
I need the following::
DOY Model Global Diffuse month season
0 1 Orgill_Hollands 0.2968 0.9261 1 Winter
1 1 Reindl_Et_Al 0.2968 0.9464 1 Winter
2 1 Boland_Et_Al 0.2968 0.9099 1 Winter
3 1 Hawlader 0.2968 0.8212 1 Winter
4 1 Miguel_Et_Al 0.2968 0.9336 1 Winter
5 1 Karatasou_Et_Al 0.2968 0.8109 1 Winter
6 1 Erbs_Et_al 0.2968 0.9506 1 Winter
7 1 Chandra 0.2968 0.9139 1 Winter
8 1 Oliveira_Et_Al 0.2968 0.9024 1 Winter
9 1 Soares_Et_Al 0.2968 0.8547 1 Winter
10 1 Standard Mean 0.2968 0.8937 1 Winter
11 2 Orgill_Hollands 0.3692 0.8777 1 Winter
12 2 Reindl_Et_Al 0.3692 0.8334 1 Winter
13 2 Boland_Et_Al 0.3692 0.8499 1 Winter
14 2 Hawlader 0.3692 0.7343 1 Winter
15 2 Miguel_Et_Al 0.3692 0.8507 1 Winter
16 2 Karatasou_Et_Al 0.3692 0.7269 1 Winter
17 2 Erbs_Et_al 0.3692 0.8818 1 Winter
18 2 Chandra 0.3692 0.8362 1 Winter
19 2 Oliveira_Et_Al 0.3692 0.7970 1 Winter
20 2 Soares_Et_Al 0.3692 0.7516 1 Winter
21 2 Standard Mean 0.3692 0.8068 1 Winter
22 3 Orgill_Hollands 0.3608 0.8931 1 Winter
23 3 Reindl_Et_Al 0.3608 0.8475 1 Winter
24 3 Boland_Et_Al 0.3608 0.8583 1 Winter
25 3 Hawlader 0.3608 0.7446 1 Winter
26 3 Miguel_Et_Al 0.3608 0.8621 1 Winter
27 3 Karatasou_Et_Al 0.3608 0.7371 1 Winter
28 3 Erbs_Et_al 0.3608 0.8919 1 Winter
29 3 Chandra 0.3608 0.8469 1 Winter
30 3 Oliveira_Et_Al 0.3608 0.8106 1 Winter
31 3 Soares_Et_Al 0.3608 0.7648 1 Winter
32 3 Standard Mean 0.3608 0.8182 1 Winter
我相信,如果将第二个数据帧连接到第一个数据帧,然后对DOY
进行排序并重置索引,您将获得理想的结果。
pd.concat([DF2, DF1]).sort_values('DOY').reset_index(drop=True)
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.