I am given a dataframe ( df_path
) below, where the index corresponds to the index of the dataframe ( df_from
) i want to copy values from, and the values represent the column of the dataframe I want to copy values from.
**df_path**
{0: {Timestamp('2017-04-05 10:18:02.095000'): 0,
Timestamp('2017-04-05 10:35:03.740000'): 0,
Timestamp('2017-04-05 10:57:18.364000'): 0,
Timestamp('2017-04-05 11:10:09.142000'): 0,
Timestamp('2017-04-07 09:41:11.167000'): 0,
Timestamp('2017-04-07 09:47:22.457000'): 0,
Timestamp('2017-04-07 09:51:22.037000'): 0,
Timestamp('2017-04-07 09:54:59.803000'): 0,
Timestamp('2017-04-07 09:58:49.512000'): 0,
Timestamp('2017-04-07 10:05:45.506000'): 0,
Timestamp('2017-04-07 10:06:38.567000'): 0,
Timestamp('2017-04-24 09:32:06.261000'): 0,
Timestamp('2017-05-10 09:36:56.943000'): 0,
Timestamp('2017-05-29 09:31:32.211000'): 0,
Timestamp('2017-06-19 09:33:56.391000'): 0,
Timestamp('2017-06-19 09:36:11.743000'): 0,
Timestamp('2017-06-28 10:06:58.320000'): 1,
Timestamp('2017-06-28 10:12:04.859000'): 1,
Timestamp('2017-07-10 09:58:36.082000'): 1,
Timestamp('2017-07-11 09:43:03.421000'): 1,
Timestamp('2017-07-12 09:27:27.504000'): 2,
Timestamp('2017-07-12 09:31:16.304000'): 2,
Timestamp('2017-07-12 09:32:47.592000'): 2,
Timestamp('2017-07-12 09:33:43.216000'): 2,
Timestamp('2017-07-26 09:19:23.656000'): 2,
Timestamp('2017-07-26 09:32:07.647000'): 2,
Timestamp('2017-07-26 09:34:16.047000'): 2,
Timestamp('2017-07-26 09:36:29.241000'): 2,
Timestamp('2017-07-26 09:41:14.152000'): 2,
Timestamp('2017-07-26 09:45:01.198000'): 2,
Timestamp('2017-07-26 09:49:06.674000'): 2,
Timestamp('2017-08-07 09:17:59.231000'): 2,
Timestamp('2017-08-07 09:25:57.865000'): 2,
Timestamp('2017-08-07 09:31:29.751000'): 2,
Timestamp('2017-08-07 09:35:27.062000'): 2,
Timestamp('2017-08-15 09:23:40.111000'): 3,
Timestamp('2017-08-16 09:17:48.032000'): 3,
Timestamp('2017-08-16 09:20:37.396000'): 3,
Timestamp('2017-08-16 09:26:34.631000'): 3,
Timestamp('2017-08-16 10:01:35.525000'): 3,
Timestamp('2017-08-16 10:06:06.222000'): 3,
Timestamp('2017-08-16 10:38:44.717000'): 3,
Timestamp('2017-08-17 09:17:18.951000'): 3,
Timestamp('2017-08-17 09:21:33.846000'): 3,
Timestamp('2017-08-17 09:28:14.337000'): 3,
Timestamp('2017-08-17 09:30:42.855000'): 3,
Timestamp('2017-08-17 09:31:35.894000'): 3,
Timestamp('2017-08-17 09:33:15.819000'): 3,
Timestamp('2017-08-17 09:35:23.751000'): 3,
Timestamp('2017-08-17 09:38:45.211000'): 3,
Timestamp('2017-08-17 09:41:25.251000'): 3,
Timestamp('2017-08-17 09:45:21.319000'): 3,
Timestamp('2017-08-17 09:47:55.097000'): 3,
Timestamp('2017-08-17 09:50:17.234000'): 3,
Timestamp('2017-08-17 09:51:49.333000'): 3,
Timestamp('2017-08-18 10:13:44.958000'): 4,
Timestamp('2017-08-18 10:19:25.371000'): 4,
Timestamp('2017-08-18 10:25:33.984000'): 4,
Timestamp('2017-08-18 10:31:29.450000'): 4,
Timestamp('2017-08-18 10:42:42.320000'): 4,
Timestamp('2017-08-18 10:53:34.495000'): 4,
Timestamp('2017-08-29 09:38:10.660000'): 4,
Timestamp('2017-08-29 09:42:50.701000'): 4,
Timestamp('2017-08-29 09:45:21.301000'): 4,
Timestamp('2017-09-04 09:34:11.032000'): 4,
Timestamp('2017-09-07 09:34:48.306000'): 4,
Timestamp('2017-09-07 09:45:30.120000'): 4,
Timestamp('2017-09-11 09:16:19.693000'): 4,
Timestamp('2017-09-11 09:19:50.156000'): 4,
Timestamp('2017-09-11 09:30:40.390000'): 4},
1: {Timestamp('2017-04-05 10:18:02.095000'): 1,
Timestamp('2017-04-05 10:35:03.740000'): 1,
Timestamp('2017-04-05 10:57:18.364000'): 1,
Timestamp('2017-04-05 11:10:09.142000'): 1,
Timestamp('2017-04-07 09:41:11.167000'): 1,
Timestamp('2017-04-07 09:47:22.457000'): 1,
Timestamp('2017-04-07 09:51:22.037000'): 1,
Timestamp('2017-04-07 09:54:59.803000'): 1,
Timestamp('2017-04-07 09:58:49.512000'): 1,
Timestamp('2017-04-07 10:05:45.506000'): 1,
Timestamp('2017-04-07 10:06:38.567000'): 1,
Timestamp('2017-04-24 09:32:06.261000'): 1,
Timestamp('2017-05-10 09:36:56.943000'): 5,
Timestamp('2017-05-29 09:31:32.211000'): 5,
Timestamp('2017-06-19 09:33:56.391000'): 5,
Timestamp('2017-06-19 09:36:11.743000'): 5,
Timestamp('2017-06-28 10:06:58.320000'): 5,
Timestamp('2017-06-28 10:12:04.859000'): 5,
Timestamp('2017-07-10 09:58:36.082000'): 5,
Timestamp('2017-07-11 09:43:03.421000'): 5,
Timestamp('2017-07-12 09:27:27.504000'): 6,
Timestamp('2017-07-12 09:31:16.304000'): 6,
Timestamp('2017-07-12 09:32:47.592000'): 6,
Timestamp('2017-07-12 09:33:43.216000'): 6,
Timestamp('2017-07-26 09:19:23.656000'): 6,
Timestamp('2017-07-26 09:32:07.647000'): 6,
Timestamp('2017-07-26 09:34:16.047000'): 6,
Timestamp('2017-07-26 09:36:29.241000'): 6,
Timestamp('2017-07-26 09:41:14.152000'): 6,
Timestamp('2017-07-26 09:45:01.198000'): 6,
Timestamp('2017-07-26 09:49:06.674000'): 6,
Timestamp('2017-08-07 09:17:59.231000'): 6,
Timestamp('2017-08-07 09:25:57.865000'): 6,
Timestamp('2017-08-07 09:31:29.751000'): 6,
Timestamp('2017-08-07 09:35:27.062000'): 6,
Timestamp('2017-08-15 09:23:40.111000'): 7,
Timestamp('2017-08-16 09:17:48.032000'): 7,
Timestamp('2017-08-16 09:20:37.396000'): 7,
Timestamp('2017-08-16 09:26:34.631000'): 7,
Timestamp('2017-08-16 10:01:35.525000'): 7,
Timestamp('2017-08-16 10:06:06.222000'): 7,
Timestamp('2017-08-16 10:38:44.717000'): 7,
Timestamp('2017-08-17 09:17:18.951000'): 7,
Timestamp('2017-08-17 09:21:33.846000'): 7,
Timestamp('2017-08-17 09:28:14.337000'): 7,
Timestamp('2017-08-17 09:30:42.855000'): 7,
Timestamp('2017-08-17 09:31:35.894000'): 7,
Timestamp('2017-08-17 09:33:15.819000'): 7,
Timestamp('2017-08-17 09:35:23.751000'): 7,
Timestamp('2017-08-17 09:38:45.211000'): 7,
Timestamp('2017-08-17 09:41:25.251000'): 7,
Timestamp('2017-08-17 09:45:21.319000'): 7,
Timestamp('2017-08-17 09:47:55.097000'): 7,
Timestamp('2017-08-17 09:50:17.234000'): 7,
Timestamp('2017-08-17 09:51:49.333000'): 7,
Timestamp('2017-08-18 10:13:44.958000'): 8,
Timestamp('2017-08-18 10:19:25.371000'): 8,
Timestamp('2017-08-18 10:25:33.984000'): 8,
Timestamp('2017-08-18 10:31:29.450000'): 8,
Timestamp('2017-08-18 10:42:42.320000'): 8,
Timestamp('2017-08-18 10:53:34.495000'): 8,
Timestamp('2017-08-29 09:38:10.660000'): 8,
Timestamp('2017-08-29 09:42:50.701000'): 8,
Timestamp('2017-08-29 09:45:21.301000'): 8,
Timestamp('2017-09-04 09:34:11.032000'): 8,
Timestamp('2017-09-07 09:34:48.306000'): 8,
Timestamp('2017-09-07 09:45:30.120000'): 8,
Timestamp('2017-09-11 09:16:19.693000'): 8,
Timestamp('2017-09-11 09:19:50.156000'): 8,
Timestamp('2017-09-11 09:30:40.390000'): 8},
2: {Timestamp('2017-04-05 10:18:02.095000'): 2,
Timestamp('2017-04-05 10:35:03.740000'): 2,
Timestamp('2017-04-05 10:57:18.364000'): 2,
Timestamp('2017-04-05 11:10:09.142000'): 2,
Timestamp('2017-04-07 09:41:11.167000'): 2,
Timestamp('2017-04-07 09:47:22.457000'): 2,
Timestamp('2017-04-07 09:51:22.037000'): 2,
Timestamp('2017-04-07 09:54:59.803000'): 2,
Timestamp('2017-04-07 09:58:49.512000'): 2,
Timestamp('2017-04-07 10:05:45.506000'): 2,
Timestamp('2017-04-07 10:06:38.567000'): 2,
Timestamp('2017-04-24 09:32:06.261000'): 2,
Timestamp('2017-05-10 09:36:56.943000'): 6,
Timestamp('2017-05-29 09:31:32.211000'): 6,
Timestamp('2017-06-19 09:33:56.391000'): 6,
Timestamp('2017-06-19 09:36:11.743000'): 6,
Timestamp('2017-06-28 10:06:58.320000'): 9,
Timestamp('2017-06-28 10:12:04.859000'): 9,
Timestamp('2017-07-10 09:58:36.082000'): 9,
Timestamp('2017-07-11 09:43:03.421000'): 9,
Timestamp('2017-07-12 09:27:27.504000'): 9,
Timestamp('2017-07-12 09:31:16.304000'): 9,
Timestamp('2017-07-12 09:32:47.592000'): 9,
Timestamp('2017-07-12 09:33:43.216000'): 9,
Timestamp('2017-07-26 09:19:23.656000'): 9,
Timestamp('2017-07-26 09:32:07.647000'): 9,
Timestamp('2017-07-26 09:34:16.047000'): 9,
Timestamp('2017-07-26 09:36:29.241000'): 9,
Timestamp('2017-07-26 09:41:14.152000'): 9,
Timestamp('2017-07-26 09:45:01.198000'): 9,
Timestamp('2017-07-26 09:49:06.674000'): 9,
Timestamp('2017-08-07 09:17:59.231000'): 9,
Timestamp('2017-08-07 09:25:57.865000'): 9,
Timestamp('2017-08-07 09:31:29.751000'): 9,
Timestamp('2017-08-07 09:35:27.062000'): 9,
Timestamp('2017-08-15 09:23:40.111000'): 10,
Timestamp('2017-08-16 09:17:48.032000'): 10,
Timestamp('2017-08-16 09:20:37.396000'): 10,
Timestamp('2017-08-16 09:26:34.631000'): 10,
Timestamp('2017-08-16 10:01:35.525000'): 10,
Timestamp('2017-08-16 10:06:06.222000'): 10,
Timestamp('2017-08-16 10:38:44.717000'): 10,
Timestamp('2017-08-17 09:17:18.951000'): 10,
Timestamp('2017-08-17 09:21:33.846000'): 10,
Timestamp('2017-08-17 09:28:14.337000'): 10,
Timestamp('2017-08-17 09:30:42.855000'): 10,
Timestamp('2017-08-17 09:31:35.894000'): 10,
Timestamp('2017-08-17 09:33:15.819000'): 10,
Timestamp('2017-08-17 09:35:23.751000'): 10,
Timestamp('2017-08-17 09:38:45.211000'): 10,
Timestamp('2017-08-17 09:41:25.251000'): 10,
Timestamp('2017-08-17 09:45:21.319000'): 10,
Timestamp('2017-08-17 09:47:55.097000'): 10,
Timestamp('2017-08-17 09:50:17.234000'): 10,
Timestamp('2017-08-17 09:51:49.333000'): 10,
Timestamp('2017-08-18 10:13:44.958000'): 11,
Timestamp('2017-08-18 10:19:25.371000'): 11,
Timestamp('2017-08-18 10:25:33.984000'): 11,
Timestamp('2017-08-18 10:31:29.450000'): 11,
Timestamp('2017-08-18 10:42:42.320000'): 11,
Timestamp('2017-08-18 10:53:34.495000'): 11,
Timestamp('2017-08-29 09:38:10.660000'): 11,
Timestamp('2017-08-29 09:42:50.701000'): 11,
Timestamp('2017-08-29 09:45:21.301000'): 11,
Timestamp('2017-09-04 09:34:11.032000'): 11,
Timestamp('2017-09-07 09:34:48.306000'): 11,
Timestamp('2017-09-07 09:45:30.120000'): 11,
Timestamp('2017-09-11 09:16:19.693000'): 11,
Timestamp('2017-09-11 09:19:50.156000'): 11,
Timestamp('2017-09-11 09:30:40.390000'): 11},
3: {Timestamp('2017-04-05 10:18:02.095000'): 3,
Timestamp('2017-04-05 10:35:03.740000'): 3,
Timestamp('2017-04-05 10:57:18.364000'): 3,
Timestamp('2017-04-05 11:10:09.142000'): 3,
Timestamp('2017-04-07 09:41:11.167000'): 3,
Timestamp('2017-04-07 09:47:22.457000'): 3,
Timestamp('2017-04-07 09:51:22.037000'): 3,
Timestamp('2017-04-07 09:54:59.803000'): 3,
Timestamp('2017-04-07 09:58:49.512000'): 3,
Timestamp('2017-04-07 10:05:45.506000'): 3,
Timestamp('2017-04-07 10:06:38.567000'): 3,
Timestamp('2017-04-24 09:32:06.261000'): 3,
Timestamp('2017-05-10 09:36:56.943000'): 7,
Timestamp('2017-05-29 09:31:32.211000'): 7,
Timestamp('2017-06-19 09:33:56.391000'): 7,
Timestamp('2017-06-19 09:36:11.743000'): 7,
Timestamp('2017-06-28 10:06:58.320000'): 10,
Timestamp('2017-06-28 10:12:04.859000'): 10,
Timestamp('2017-07-10 09:58:36.082000'): 10,
Timestamp('2017-07-11 09:43:03.421000'): 10,
Timestamp('2017-07-12 09:27:27.504000'): 12,
Timestamp('2017-07-12 09:31:16.304000'): 12,
Timestamp('2017-07-12 09:32:47.592000'): 12,
Timestamp('2017-07-12 09:33:43.216000'): 12,
Timestamp('2017-07-26 09:19:23.656000'): 12,
Timestamp('2017-07-26 09:32:07.647000'): 12,
Timestamp('2017-07-26 09:34:16.047000'): 12,
Timestamp('2017-07-26 09:36:29.241000'): 12,
Timestamp('2017-07-26 09:41:14.152000'): 12,
Timestamp('2017-07-26 09:45:01.198000'): 12,
Timestamp('2017-07-26 09:49:06.674000'): 12,
Timestamp('2017-08-07 09:17:59.231000'): 12,
Timestamp('2017-08-07 09:25:57.865000'): 12,
Timestamp('2017-08-07 09:31:29.751000'): 12,
Timestamp('2017-08-07 09:35:27.062000'): 12,
Timestamp('2017-08-15 09:23:40.111000'): 12,
Timestamp('2017-08-16 09:17:48.032000'): 12,
Timestamp('2017-08-16 09:20:37.396000'): 12,
Timestamp('2017-08-16 09:26:34.631000'): 12,
Timestamp('2017-08-16 10:01:35.525000'): 12,
Timestamp('2017-08-16 10:06:06.222000'): 12,
Timestamp('2017-08-16 10:38:44.717000'): 12,
Timestamp('2017-08-17 09:17:18.951000'): 12,
Timestamp('2017-08-17 09:21:33.846000'): 12,
Timestamp('2017-08-17 09:28:14.337000'): 12,
Timestamp('2017-08-17 09:30:42.855000'): 12,
Timestamp('2017-08-17 09:31:35.894000'): 12,
Timestamp('2017-08-17 09:33:15.819000'): 12,
Timestamp('2017-08-17 09:35:23.751000'): 12,
Timestamp('2017-08-17 09:38:45.211000'): 12,
Timestamp('2017-08-17 09:41:25.251000'): 12,
Timestamp('2017-08-17 09:45:21.319000'): 12,
Timestamp('2017-08-17 09:47:55.097000'): 12,
Timestamp('2017-08-17 09:50:17.234000'): 12,
Timestamp('2017-08-17 09:51:49.333000'): 12,
Timestamp('2017-08-18 10:13:44.958000'): 13,
Timestamp('2017-08-18 10:19:25.371000'): 13,
Timestamp('2017-08-18 10:25:33.984000'): 13,
Timestamp('2017-08-18 10:31:29.450000'): 13,
Timestamp('2017-08-18 10:42:42.320000'): 13,
Timestamp('2017-08-18 10:53:34.495000'): 13,
Timestamp('2017-08-29 09:38:10.660000'): 13,
Timestamp('2017-08-29 09:42:50.701000'): 13,
Timestamp('2017-08-29 09:45:21.301000'): 13,
Timestamp('2017-09-04 09:34:11.032000'): 13,
Timestamp('2017-09-07 09:34:48.306000'): 13,
Timestamp('2017-09-07 09:45:30.120000'): 13,
Timestamp('2017-09-11 09:16:19.693000'): 13,
Timestamp('2017-09-11 09:19:50.156000'): 13,
Timestamp('2017-09-11 09:30:40.390000'): 13},
4: {Timestamp('2017-04-05 10:18:02.095000'): 4,
Timestamp('2017-04-05 10:35:03.740000'): 4,
Timestamp('2017-04-05 10:57:18.364000'): 4,
Timestamp('2017-04-05 11:10:09.142000'): 4,
Timestamp('2017-04-07 09:41:11.167000'): 4,
Timestamp('2017-04-07 09:47:22.457000'): 4,
Timestamp('2017-04-07 09:51:22.037000'): 4,
Timestamp('2017-04-07 09:54:59.803000'): 4,
Timestamp('2017-04-07 09:58:49.512000'): 4,
Timestamp('2017-04-07 10:05:45.506000'): 4,
Timestamp('2017-04-07 10:06:38.567000'): 4,
Timestamp('2017-04-24 09:32:06.261000'): 4,
Timestamp('2017-05-10 09:36:56.943000'): 8,
Timestamp('2017-05-29 09:31:32.211000'): 8,
Timestamp('2017-06-19 09:33:56.391000'): 8,
Timestamp('2017-06-19 09:36:11.743000'): 8,
Timestamp('2017-06-28 10:06:58.320000'): 11,
Timestamp('2017-06-28 10:12:04.859000'): 11,
Timestamp('2017-07-10 09:58:36.082000'): 11,
Timestamp('2017-07-11 09:43:03.421000'): 11,
Timestamp('2017-07-12 09:27:27.504000'): 13,
Timestamp('2017-07-12 09:31:16.304000'): 13,
Timestamp('2017-07-12 09:32:47.592000'): 13,
Timestamp('2017-07-12 09:33:43.216000'): 13,
Timestamp('2017-07-26 09:19:23.656000'): 13,
Timestamp('2017-07-26 09:32:07.647000'): 13,
Timestamp('2017-07-26 09:34:16.047000'): 13,
Timestamp('2017-07-26 09:36:29.241000'): 13,
Timestamp('2017-07-26 09:41:14.152000'): 13,
Timestamp('2017-07-26 09:45:01.198000'): 13,
Timestamp('2017-07-26 09:49:06.674000'): 13,
Timestamp('2017-08-07 09:17:59.231000'): 13,
Timestamp('2017-08-07 09:25:57.865000'): 13,
Timestamp('2017-08-07 09:31:29.751000'): 13,
Timestamp('2017-08-07 09:35:27.062000'): 13,
Timestamp('2017-08-15 09:23:40.111000'): 14,
Timestamp('2017-08-16 09:17:48.032000'): 14,
Timestamp('2017-08-16 09:20:37.396000'): 14,
Timestamp('2017-08-16 09:26:34.631000'): 14,
Timestamp('2017-08-16 10:01:35.525000'): 14,
Timestamp('2017-08-16 10:06:06.222000'): 14,
Timestamp('2017-08-16 10:38:44.717000'): 14,
Timestamp('2017-08-17 09:17:18.951000'): 14,
Timestamp('2017-08-17 09:21:33.846000'): 14,
Timestamp('2017-08-17 09:28:14.337000'): 14,
Timestamp('2017-08-17 09:30:42.855000'): 14,
Timestamp('2017-08-17 09:31:35.894000'): 14,
Timestamp('2017-08-17 09:33:15.819000'): 14,
Timestamp('2017-08-17 09:35:23.751000'): 14,
Timestamp('2017-08-17 09:38:45.211000'): 14,
Timestamp('2017-08-17 09:41:25.251000'): 14,
Timestamp('2017-08-17 09:45:21.319000'): 14,
Timestamp('2017-08-17 09:47:55.097000'): 14,
Timestamp('2017-08-17 09:50:17.234000'): 14,
Timestamp('2017-08-17 09:51:49.333000'): 14,
Timestamp('2017-08-18 10:13:44.958000'): 14,
Timestamp('2017-08-18 10:19:25.371000'): 14,
Timestamp('2017-08-18 10:25:33.984000'): 14,
Timestamp('2017-08-18 10:31:29.450000'): 14,
Timestamp('2017-08-18 10:42:42.320000'): 14,
Timestamp('2017-08-18 10:53:34.495000'): 14,
Timestamp('2017-08-29 09:38:10.660000'): 14,
Timestamp('2017-08-29 09:42:50.701000'): 14,
Timestamp('2017-08-29 09:45:21.301000'): 14,
Timestamp('2017-09-04 09:34:11.032000'): 14,
Timestamp('2017-09-07 09:34:48.306000'): 14,
Timestamp('2017-09-07 09:45:30.120000'): 14,
Timestamp('2017-09-11 09:16:19.693000'): 14,
Timestamp('2017-09-11 09:19:50.156000'): 14,
Timestamp('2017-09-11 09:30:40.390000'): 14}}
At the moment I am using the for loop to subset and create the new dataframe ( result
). But is there a more efficient way to do this without using for loop?
df_from = pd.DataFrame(np.random.normal(0,1,size = (70,15)),index = df_ticks_paths.index)
result = pd.DataFrame(np.nan, index = df_from.index, columns = df_from.columns)
for idx, row in df_path.iterrows():
for col, col_copy in row.iteritems():
result.loc[idx,col] = df_from.loc[idx, col_copy]
Here is another way to it which is, on my machine, twice as fast in average.
# In your post, you do not provide `df_ticks_paths.index`,
# so I make up one for demonstration purpose
df_ticks_paths_index = pd.DatetimeIndex(
[
"2017-04-04 10:18:02.095000",
"2017-04-05 10:35:03.740000",
"2017-04-05 10:59:18.364000",
"2017-04-07 09:41:11.167000",
"2017-09-05 11:10:09.142000",
"2017-10-07 19:41:11.167000",
],
dtype="datetime64[ns]",
freq=None,
)
df_from = pd.DataFrame(np.random.normal(0, 1, size=(6, 15)), index=df_ticks_paths_index)
print(df_from)
# Output
0 1 2 3 4 \
2017-04-04 10:18:02.095 -0.535905 0.569140 1.401489 0.551076 0.158319
2017-04-05 10:35:03.740 -1.474314 0.318631 0.178816 1.333643 1.097234
2017-04-05 10:59:18.364 1.878162 0.805685 -1.132736 0.184201 0.008899
2017-04-07 09:41:11.167 -0.480329 0.575849 1.855999 0.815211 -0.126898
2017-09-05 11:10:09.142 0.858272 -0.759353 0.275809 -0.228938 0.782700
2017-10-07 19:41:11.167 -0.914579 -0.347113 0.225863 0.126135 -1.987540
2017-09-11 09:30:40.390 -0.807214 0.511869 -0.980860 0.944337 0.618520
... 10 11 12 13 14
2017-04-04 10:18:02.095 ... -0.259234 0.861597 -1.297222 1.467518 0.209933
2017-04-05 10:35:03.740 ... 1.894300 0.592537 -0.146224 -1.392316 2.056190
2017-04-05 10:59:18.364 ... -0.695715 1.236572 0.036024 0.701121 1.013895
2017-04-07 09:41:11.167 ... -0.035515 -0.359212 0.952660 -1.192822 0.103593
2017-09-05 11:10:09.142 ... -0.702647 1.212190 0.901758 0.343678 1.910087
2017-10-07 19:41:11.167 ... 0.018768 0.544317 0.218981 0.625162 0.043180
2017-09-11 09:30:40.390 ... 0.505412 1.254301 -1.048322 0.222409 0.962458
[7 rows x 15 columns]
print(df_path)
# Output
0 1 2 3 4
2017-04-05 10:18:02.095 0 1 2 3 4
2017-04-05 10:35:03.740 0 1 2 3 4
2017-04-05 10:57:18.364 0 1 2 3 4
2017-04-05 11:10:09.142 0 1 2 3 4
2017-04-07 09:41:11.167 0 1 2 3 4
... .. .. .. .. ..
2017-09-07 09:34:48.306 4 8 11 13 14
2017-09-07 09:45:30.120 4 8 11 13 14
2017-09-11 09:16:19.693 4 8 11 13 14
2017-09-11 09:19:50.156 4 8 11 13 14
2017-09-11 09:30:40.390 4 8 11 13 14
[70 rows x 5 columns]
Then:
df_path.columns = [f"col{x}" for x in df_path.columns]
df = pd.merge(
left=df_path, right=df_from, how="inner", left_index=True, right_index=True
)
df = pd.concat(
[df.apply(lambda x: x[x[col]], axis=1) for col in df_path.columns], axis=1
)
print(df)
# Output
0 1 2 3 4
2017-04-05 10:35:03.740 -1.474314 0.318631 0.178816 1.333643 1.097234
2017-04-07 09:41:11.167 -0.480329 0.575849 1.855999 0.815211 -0.126898
2017-09-11 09:30:40.390 0.618520 -1.307552 1.254301 0.222409 0.962458
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.