【发布时间】:2019-09-27 06:25:22
【问题描述】:
我正在尝试将多个 pandas 数据帧合并为一个。我有 1 个带有测量位置的主机。其他数据帧包含一个位置的多个测量值。如下:
df 1:位置 ID | X |是 | Z
1 |1| 2 |3 2 |3| 2 |1 ndf 2:位置 ID |日期 |测量
1 |January 1 12:30 | 1 1 |January 16 12 :30 | 4 1 ...df 2:位置 ID |日期 |测量
2 January 1 12:30 3 2 January 16 12 :30 9 2 ...df n:位置 ID |日期 |测量
n January 1 12:30 4 n January 16 12 :30 6 n January 20 11:30 7 ...
我正在尝试创建这样的数据框:
df_final:位置 ID | X |是 | Z | 1月1日12:00 | 1月16日12:30| 1月20日11:30等
1 1 2 3 1 4 NaN 2 3 2 1 3 9 NaN n 2 5 7 4 6 7
日期已经是日期时间对象,位置 ID 是两个数据框的索引。
我尝试使用 append、merge 和 concat 函数都使用两个框架,并在添加之前通过 List = frame['measurements'] 将框架转换为列表。
问题在于,要么在第一个数据框下添加行,而应将测量值添加到现有行的新列中(分别为位置 ID),或者日期结束 op 是新行,而新行创建具有位置 ID 的列。
很抱歉我的问题布局不太好,但我是这个论坛的新手。
【问题讨论】:
-
并非每个位置都会在每一刻都有测量值。我希望框架填充没有值为 NaN 的列,并且如果该列尚不存在,则添加新列。最好按日期排序。
标签: pandas dataframe merge append concat