gpt4 book ai didi

python - 在 DataFrame 中为一系列日期创建 id

转载 作者:行者123 更新时间:2023-12-01 08:55:34 24 4
gpt4 key购买 nike

我想创建一个数据框,其中以下每个 id 位于 df1 中每个日期的列中。

id = ['A', 'B', 'C']
df1 = pd.DataFrame()
df1['date'] = pd.date_range(start= '2000-1-1', end = '2010-12-31', freq = 'B')

我希望数据如下所示:

           date     id
0 2000-01-03 A
1 2000-01-03 B
2 2000-01-03 C
3 2000-01-04 A
4 2000-01-04 B
5 2000-01-04 C
6 2000-01-05 A
7 2000-01-05 B
8 2000-01-05 C

任何帮助都会很棒!

最佳答案

您可以连接根据输入列表中的每个值构建的数据框:

L = ['A', 'B', 'C']
dates = pd.date_range(start='2000-1-1', end='2010-12-31', freq='B')

df = pd.concat((pd.DataFrame({'date': dates}).assign(id=i) for i in L), ignore_index=True)
df = df.iloc[np.lexsort((df.index, df['date']))].reset_index(drop=True)

print(df)

date id
0 2000-01-03 A
1 2000-01-03 B
2 2000-01-03 C
3 2000-01-04 A
4 2000-01-04 B
5 2000-01-04 C
... ... ..

8604 2010-12-30 A
8605 2010-12-30 B
8606 2010-12-30 C
8607 2010-12-31 A
8608 2010-12-31 B
8609 2010-12-31 C

关于python - 在 DataFrame 中为一系列日期创建 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52798933/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com