如何使用以下规范创建一个附加的Date列:
Date
实际的数据集要比这个大得多,因此Date可能涵盖多个年份。
RandomNumberList = np.random.randint(1,10,250) pd.DataFrame(RandomNumberList, columns = ["Value"])
piwo6bdm1#
如果需要重复每个日期125次:
date_range和Index.repeat的任意长度DataFrame的通用解决方案,如果长度不可分,则添加1值:
date_range
Index.repeat
1
N = 125 r = pd.date_range('2020-01-01', periods=len(df) // N + 1) df['Date'] = r.repeat(N)[:len(df)]
如果df的长度可被125整除,则应简化解:x一个一个一个一个x一个一个二个x
125
如果需要重复125个日期时间:
N = 125 r = pd.date_range('2020-01-01', periods=N) df['Date'] = np.tile(r, len(df) // N + 1)[:len(df)] print (df) Value Date 0 9 2020-01-01 1 2 2020-01-02 2 1 2020-01-03 3 2 2020-01-04 4 8 2020-01-05 .. ... ... 245 2 2020-04-30 246 6 2020-05-01 247 3 2020-05-02 248 8 2020-05-03 249 9 2020-05-04 [250 rows x 2 columns]
o8x7eapl2#
如果你想要一个彻底的知识,阅读由耶斯列写的答案。
import numpy as np import pandas as pd from pandas import DataFrame as df RandomNumberList = np.random.randint(1,10,250) df = pd.DataFrame(RandomNumberList, columns = ["Value"]) df['Date'] = np.repeat(pd.date_range('2020-01-01', periods=2), 125) print(df) """ Value Date 0 7 2020-01-01 1 1 2020-01-01 2 5 2020-01-01 3 3 2020-01-01 4 4 2020-01-01 .. ... ... 245 6 2020-01-02 246 9 2020-01-02 247 7 2020-01-02 248 7 2020-01-02 249 8 2020-01-02 [250 rows x 2 columns] """
2条答案
按热度按时间piwo6bdm1#
如果需要重复每个日期125次:
date_range
和Index.repeat
的任意长度DataFrame的通用解决方案,如果长度不可分,则添加1
值:如果df的长度可被
125
整除,则应简化解:x一个一个一个一个x一个一个二个x
如果需要重复125个日期时间:
o8x7eapl2#
如果你想要一个彻底的知识,阅读由耶斯列写的答案。