【问题标题】:DateTime want just AM/PM portionDateTime 只需要 AM/PM 部分
【发布时间】:2020-08-14 15:57:53
【问题描述】:

我确实有一列看起来像这样:

Time        Qty_sold
12:00 pm    2 
12:01 pm    5
12:05 pm    4
05:07 am    2
06:09 am    1

时间列是一个对象,我只想检索上午/下午部分。我将如何做到这一点?我确实尝试了下面的代码来滑动我的数据,但它没有工作。

df_sales_sum['am/pm'] = df_sales_sum['Time'].astype(str).str[:-2].astype(np.int64)

还有其他方法可以获得 AM/PM 部分吗?

谢谢!

【问题讨论】:

  • 当你说“时间列是一个对象”时,你的意思是一个字符串吗?
  • 嗨@jarmod,没有dtype是一个对象

标签: python python-3.x pandas datetime object


【解决方案1】:

你很亲密。你需要.str[-2:]

用途:

df= pd.DataFrame({'Time': ['12:00 pm', '12:01 pm', '12:05 pm', '05:07 am', '06:09 am']})
df["'am/pm'"] = df['Time'].str[-2:]
print(df)

输出:

       Time am/pm
0  12:00 pm    pm
1  12:01 pm    pm
2  12:05 pm    pm
3  05:07 am    am
4  06:09 am    am

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-29
    • 2020-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多