python - 将重复日期列添加到 pandas DataFrame
问题描述
我是 pandas 的新手,我正在努力将日期添加到来自 .csv 文件的 pandas dataFrame df 中。我有一个带有几个唯一 id 的数据框,每个 id 有 120 个月,我需要添加一个列日期。每个 id 应该有 120 个周期的完全相同的日期。我正在努力添加它们,因为在第一个 id 之后还有另一个 id 并且日期应该重新开始。我在 csv 文件中的数据如下所示:
month id
1 1593
2 1593
...
120 1593
1 8964
2 8964
...
120 8964
1 58944
...
这是我的代码,我不确定如何使用 groupby 方法根据 id 为我的数据框添加日期:
group=df.groupby('id')
group['date']=pd.date_range(start='2020/6/1', periods=120, freq='MS').shift(14,freq='D')
请帮我!!!
解决方案
如果你知道你有多少组 120,你可以使用这个。把最后的2改一下就行了。此示例创建了两次重复的 120 个日期。您可能必须适应您的特定用途。
new_dates = list(pd.date_range(start='2020/6/1', periods=120, freq='MS').shift(14,freq='D'))*2
df = pd.DataFrame({'date': new_dates})
推荐阅读
- http - 分隔符防御中的SP和HT是什么意思
- flutter - 使用不显示 MediaQuery 错误的上下文调用 MediaQuery.of(),即使应用程序中未使用 MediaQuery
- yii2 - HTML Purifier - 如何保持 css "margin-left: calc(25%)"
- c - 在 C 中,如何在没有指针的情况下更改局部范围变量?
- spring-boot - 如何在 JMX 上使用 SpringBoot 执行器
- java - 为什么编码在 Eclipse 中有效,但不在 Eclipse 之外?
- python - 如何在 Matlab 或 Python 中移动以零为内接的矩形数组?
- java - 在 OneToMany 的情况下不会发生数据库插入
- algorithm - 数量级的链式法则
- php - 如何在 PHP 类中创建关联数组