【问题标题】:How to sort dataframe by time and other condition?如何按时间和其他条件对数据帧进行排序?
【发布时间】:2020-04-23 03:48:08
【问题描述】:

我有一个包含以下列的数据框:movie_namedatecomment

日期格式如下(示例):2018-06-27T09:09:00Z

我想制作一个仅包含某部电影的第一个日期的新数据框。

例如,对于电影 a,第一个日期可能是 2018-09-11T:02:02:00Z,在这种情况下,我想要电影 a 的所有行 2018-09-11。当有多部不同日期的电影时,我该怎么做?

【问题讨论】:

  • this
  • 您是否尝试过在数据库的类型部分使用date 而不是datetime
  • 我将如何使用日期类型完成此操作?

标签: python pandas numpy data-manipulation data-cleaning


【解决方案1】:
import datetime as dt
df['My Time Format'] = dt['Given time].apply(lambda x: dt.datetime.strftime(dt.datetime.strptime(x, "%Y-%m-%dT%H:%M:%SZ"),"%Y-%m-%d"))

【讨论】:

  • 是的,我已经转换了日期,但我仍然不知道如何创建一个新的数据框,其中包含某部电影的第一个日期的行。
  • 你用过df.groupby(['我的时间格式'])
【解决方案2】:

这是一种方法:

# create a new df
new_df = old_df['date'].copy()

# get the date
new_df['date'] = pd.to_datetime(new_df['date']).dt.date

# first date of movie
new_df.groupby('movie_name')['date'].first()

【讨论】:

  • 是的,我已经转换了日期,但是我将如何制作一个仅包含某部电影的第一个日期的新数据框?例如,如果电影“a”的第一个日期是 2018-09-11,我将如何只提取具有该特定日期的行。当有多部不同日期的电影时,我该怎么做?
猜你喜欢
  • 2019-09-06
  • 2020-10-22
  • 1970-01-01
  • 2022-01-08
  • 2017-10-06
  • 2021-10-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多