【发布时间】:2021-08-06 05:04:34
【问题描述】:
我有一些看起来像这样的代码:
df['MONTH'] = [df.index[i].month for i in range(len(df))]
df['WEEK'] = [df.index[i].week for i in range(len(df))]
df['DAY'] = [df.index[i].day for i in range(len(df))]
df['HOUR'] = [df.index[i].hour for i in range(len(df))]
df['MINUTE'] = [df.index[i].minute for i in range(len(df))]
这很慢,因为它运行了 df 的五次。
有没有办法在 1*N 中执行这种方法,将计算时间减少 5 倍?
我在想,比如:
df[['MONTH'],['WEEK'], ...['HOUR']] = [vector assignment]
【问题讨论】:
标签: python python-3.x pandas dataframe