问题描述
我有这个数据框,我正在尝试添加具有特定操作的事件时间的新列。
df = pd.read_csv("https://testme162.s3.amazonaws.com/run_terminate.csv")
df["_source_responseElements_instancesSet_items_instanceId"].value_counts()
i-0e1a1af5e49146950 2
i-03222a9b4df03882c 2
i-00b0e46026d56c6b6 2
i-06e3be34cdbac3c36 2
i-096dbc191934d6698 2
i-08b7f1ffece17a188 2
i-004785d32e1392117 2
i-06421f5f460be8b3a 2
有一个名为“ _source_eventName”的列,其中包含2个重要值。 RunInstances 和 TerminateInstances 。我试图在实例终止时添加带有日期时间的新列。在sql中,我会自行加入instance_id列上的表,并返回不匹配的event_names。
解决方法
这就是我达到预期结果的方式。
df.join(
df.groupby("_source_responseElements_instancesSet_items_instanceId")[
"_source_responseElements_instancesSet_items_instanceId","_source_eventTime"
].transform(max),lsuffix="_left",rsuffix="_right",)
我不确定这是否是pythonic方式!