python - 将数据框分组并根据条件选择其中一个单元格

标签 python pandas dataframe

我的数据集看起来像这样 Tr、日期、时间 AV81312,20161014,121000 AV81312,20161014,160221 AV85012,20170422,150858 AV85012,20161108,11137 AV86157,20170426,45747 AV86157,20170426,45744 AV86157,20160813,134312

我只需从每个具有最新记录的 Tr 中选择一项,即具有更高日期和时间的最新记录

所需的输出是 Tr、日期、时间 AV81312,20161014,160221 AV85012,20170422,150858 AV86157,20170426,45747

我的代码是

df2 = read_csv("sample.csv") df2 = df2.值 x = [] 对于 df2 中的 i: 对于 df2 中的 j: 如果 i[2] == j[2]: 如果 i[3] >= j[3]: x.append(i) 它没有按预期工作

最佳答案

使用 -

df['Date_Time'] = pd.to_datetime(df['Date'].astype(str).str.cat(df['Time'].astype(str)),format='%Y%m%d%H%M%S')
df.loc[df.groupby('Tr')['Date_Time'].idxmax()].drop('Date_Time', axis=1)

输出

        Tr      Date    Time
0  AV81312  20161014  160221
1  AV85012  20170422  150858
2  AV86157  20170426   45747

关于python - 将数据框分组并根据条件选择其中一个单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54217810/

相关文章:

python - 通过字典进行复杂的迭代

python - 按字母顺序对文本中出现的字母进行排序

Python 数据帧 : issue when attempting to group by multiple columns

python - 将 Pandas DataFrame 与时间序列一起使用时,对散点图中的标记进行着色

python - 移动数据框列并更改列顺序

python - 当应用程序在gtk.main()中运行时,如何监听套接字?

python - openpyxl生成的Excel文件打开时需要修复

python - pandas - 检索使用 unstack 函数提取的数据时出现问题用 0 填充空值

python - 选择特征后打印列/变量名称

python - 如何按类标签或任何特定列对 Pandas 数据框进行排序/分组