Python 日期时间格式
目前,我在220万张唱片中工作。其中两列由Python 日期时间格式,python,pandas,python-datetime,Python,Pandas,Python Datetime,目前,我在220万张唱片中工作。其中两列由成员id和txn\u时间组成。数据框看起来像- membership_id txn_time 1 2019-02-17 00:00:00.0 2 2018-04-23 00:00:00.0 3 2018-12-17 00:00:00.0 4 2019-02-17
成员id
和txn\u时间
组成。数据框看起来像-
membership_id txn_time
1 2019-02-17 00:00:00.0
2 2018-04-23 00:00:00.0
3 2018-12-17 00:00:00.0
4 2019-02-17 00:00:00.0
5 2018-04-02 00:00:00.0
6 2018-09-10 06:20:58.0
7 2019-01-16 08:11:42.0
membership_id txn_time
1 2019-02-17
2 2018-04-23
3 2018-12-17
4 2019-02-17
5 2018-04-02
6 2018-09-10
7 2019-01-16
我希望数据框看起来像-
membership_id txn_time
1 2019-02-17 00:00:00.0
2 2018-04-23 00:00:00.0
3 2018-12-17 00:00:00.0
4 2019-02-17 00:00:00.0
5 2018-04-02 00:00:00.0
6 2018-09-10 06:20:58.0
7 2019-01-16 08:11:42.0
membership_id txn_time
1 2019-02-17
2 2018-04-23
3 2018-12-17
4 2019-02-17
5 2018-04-02
6 2018-09-10
7 2019-01-16
到目前为止我做了什么-
df_txn['TXN_DATE'] = pd.to_datetime(df_txn['txn_time'], errors='coerce')
但是,它不起作用,记录的数量是巨大的220万
提前感谢。为了提高性能,请使用参数
格式
,然后通过转换为不带时间的日期时间,如果以后需要通过类似日期时间的函数处理数据,则更好:
或者通过获取对象来获取python日期:
df_txn['TXN_DATE'] = pd.to_datetime(df_txn['txn_time'],
errors='coerce',
format='%Y-%m-%d %H:%M:%S.%f').dt.date
此lambda函数将帮助您解决此问题,而无需使用datetime库
df['txn_time'] = df['txn_time'].apply(lambda x:x.split()[0])
但它不工作,记录的数量有错误?还是慢?