smi*_*hra 3 dataframe python-3.x pandas
我有一个pandas数据帧数据,其列MFR_DATE类型为datetime.我想创建其他列,MFR_YEAR,MFR_MONTH,MFR_DAY,我使用以下3个语句来执行此操作.我想知道是否有更好的方法吗?
data['MFR_YEAR'] = data.MFR_DATE.apply(lambda t: t.year)
data['MFR_MONTH'] = data.MFR_DATE.apply(lambda t: t.month)
data['MFR_DAY'] = data.MFR_DATE.apply(lambda t: t.day)
Run Code Online (Sandbox Code Playgroud)
使用矢量化Series.dt.访问器:
data['MFR_YEAR'] = data['MFR_DATE'].dt.year
data['MFR_MONTH'] = data['MFR_DATE'].dt.month
data['MFR_DAY'] = data['MFR_DATE'].dt.day
Run Code Online (Sandbox Code Playgroud)
可用方法和属性列表:
In [21]: df.MFR_DATE.dt.
df.MFR_DATE.dt.ceil df.MFR_DATE.dt.dayofweek df.MFR_DATE.dt.floor df.MFR_DATE.dt.is_month_end df.MFR_DATE.dt.is_year_end
df.MFR_DATE.dt.date df.MFR_DATE.dt.dayofyear df.MFR_DATE.dt.freq df.MFR_DATE.dt.is_month_start df.MFR_DATE.dt.is_year_start
df.MFR_DATE.dt.day df.MFR_DATE.dt.days_in_month df.MFR_DATE.dt.hour df.MFR_DATE.dt.is_quarter_end df.MFR_DATE.dt.microsecond
df.MFR_DATE.dt.day_name df.MFR_DATE.dt.daysinmonth df.MFR_DATE.dt.is_leap_year df.M…t.is_quarter_start df.MFR_DATE.dt.minute
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
58 次 |
| 最近记录: |