中分割时间戳记日期

中分割时间戳记日期

我有一个关于熊猫的问题:

所以我有一个数据框,看起来像下面这样:

timestamp     user     exercises
2018-01-01    John         7
2018-01-01    Mary         9
2018-02-01    John         3
2018-02-01    Mary         2
2018-03-01    John         1
2018-03-01    Mary         5
2019-01-01    John         3
2019-01-01    Mary         4
2019-02-01    John         2
2019-02-01    Mary         5
2020-01-01    John         6
2020-01-01    Mary         2
2020-02-01    John         1
2020-02-01    Mary         2


而且我需要获得一个输出数据框,该数据框是给定数据框的一个子集,但它必须仅保留2018年的数据,如下所示:

    timestamp     user     exercises
    2018-01-01    John         7
    2018-01-01    Mary         9
    2018-02-01    John         3
    2018-02-01    Mary         2
    2018-03-01    John         1
    2018-03-01    Mary         5


关于如何从给定数据框中获取此输出数据框的任何想法?

提前非常感谢您。

任何帮助将不胜感激。

最佳答案

尝试:

import pandas as pd
import datetime as dt

df = pd.DataFrame({"timestamp": ['2018-01-01',
                                 '2018-01-01',
                                 '2019-01-01',
                                 '2020-01-01'],
                   "user": ['john', 'mary', 'john', 'mary'],
                   'exercises': [7,9,3,2]},)


df['timestamp'] = pd.to_datetime(df['timestamp'])

df[df['timestamp'].dt.year == 2018]


输入

    timestamp   user    exercises
0   2018-01-01  john    7
1   2018-01-01  mary    9
2   2019-01-01  john    3
3   2020-01-01  mary    2


输出

timestamp   user    exercises
0   2018-01-01  john    7
1   2018-01-01  mary    9

关于python - 在 Pandas 中分割时间戳记日期,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55974955/

10-14 12:31