簡體   English   中英

如何在python中僅從具有日期時間和文本值的字段中獲取日期和文本值?

[英]How to get only date and text values from a field with Datetime and text values in python?

我的 Python 字段值如下所示:

Metrics_Values
2017-12-31 00:00:00
UW Value
2017-12-31 00:00:00
2017-12-31 00:00:00

我想要以下輸出:

Metric_Values
12/31/2017
UW Value
12/31/2017
12/31/2017

我在這個數據幀上嘗試了幾種不同的操作,但由於值是對象數據類型,而且我也有一些文本值,我很難得到我需要的東西。

感謝任何指針。 謝謝

我不建議在同一個系列中使用多種類型的數據,但這里有一個代碼可以為您完成這項工作:

df.Metrics_Values = df.Metrics_Values.map(lambda x: x.date() if isinstance(x, datetime.datetime) else x)

您可以使用strptime (將字符串轉換為 datetime 對象)和strftime (將 datetime 對象轉換為字符串)從datetime根據需要格式化日期。 下面是一個例子:

import datetime as dt

def convert_format(date_string):
    return dt.datetime.strptime(date_string,'%Y-%m-%d %H:%M:%S').strftime('%Y/%m/%d')

然后apply這個方法將你數據幀或系列:

df.time_column.apply(lambda x: convert_format(x))

對於輸入:

0  2017-12-31 00:00:00
1  2017-12-31 00:00:00

使用上面的代碼導致:

0    2017/12/31
1    2017/12/31

有關它們如何工作的更多信息,請參閱strptimestrftime上的文檔: https : strptime

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM