[英]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
有關它們如何工作的更多信息,請參閱strptime
和strftime
上的文檔: https : strptime
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.