相关疑难解决方法(0)

熊猫:如何从周和年创建日期时间对象?

我有一个数据框,提供两个整数列,其中包含年份的一年和一周:

import pandas as pd
import numpy as np
L1 = [43,44,51,2,5,12]
L2 = [2016,2016,2016,2017,2017,2017]
df = pd.DataFrame({"Week":L1,"Year":L2})

df
Out[72]: 
   Week  Year
0    43  2016
1    44  2016
2    51  2016
3     2  2017
4     5  2017
5    12  2017
Run Code Online (Sandbox Code Playgroud)

我需要从这两个数字创建一个datetime-object.

我试过这个,但它抛出一个错误:

df["DT"] = df.apply(lambda x: np.datetime64(x.Year,'Y') + np.timedelta64(x.Week,'W'),axis=1)
Run Code Online (Sandbox Code Playgroud)

然后我尝试了这个,它可以工作,但给出了错误的结果,就是它完全忽略了一周:

df["S"] = df.Week.astype(str)+'-'+df.Year.astype(str)
df["DT"] = df["S"].apply(lambda x: pd.to_datetime(x,format='%W-%Y'))

df
Out[74]: 
   Week  Year        S         DT
0    43  2016  43-2016 2016-01-01
1    44  2016  44-2016 2016-01-01
2    51  2016  51-2016 2016-01-01
3 …
Run Code Online (Sandbox Code Playgroud)

python datetime numpy pandas

14
推荐指数
3
解决办法
7531
查看次数

按周、月、日分组

我想根据模型的日期时间属性按日期间隔对查询集进行分组。我想每天、每周和每月显示模型的平均值。

例如

  • 2017 年 1 月 1 日开始的一周 - 平均距离:30
  • 从 08/01/2017 开始的一周 - 平均距离:40 ...

这可以用标准的 Django 查询集 API 来实现吗?

django

9
推荐指数
2
解决办法
4858
查看次数

如何将字符串数据框列转换为日期时间作为带有年和周的格式?

样本数据:

Week      Price
2011-31    1.58
2011-32    1.9
2011-33    1.9
2011-34    1.9
Run Code Online (Sandbox Code Playgroud)

我有一个像上面这样的数据框,我想将“周”列类型从字符串转换为日期时间。

我的代码:

data['Date_Time'] = pd.to_datetime(data.Week, format='%Y-%W')
data = data.drop(['Week'], axis=1)
data.index = data.Date_Time
Run Code Online (Sandbox Code Playgroud)

错误:

“ValueError:无法使用没有日期和年份的‘%W’或‘%U’”

python datetime python-3.x pandas

9
推荐指数
1
解决办法
3912
查看次数

熊猫到日期时间和星期

我有一些按年和周格式化的数据。这是一个小样本

    week    cases
0   192801  7647
1   192802  11427
2   192803  11970
3   192804  12920
4   192805  14660
Run Code Online (Sandbox Code Playgroud)

周数据看起来像是格式一样%Y%W,但是当我尝试通过pd.to_datetime(df.week, format = '%Y%W)每年将其转换为日期时间时,会收到每年第一个月的第一天。

0   1928-01-01
1   1928-01-01
2   1928-01-01
3   1928-01-01
4   1928-01-01
Run Code Online (Sandbox Code Playgroud)

到底是怎么回事?如何正确格式化星期数据?

python pandas

6
推荐指数
1
解决办法
1551
查看次数

如何根据python中的周数获取周的所有日期

我想要基于周数的当前周的所有日期。

我可以得到周数

import datetime
weeknum=datetime.datetime.now().isocalendar()[1]
Run Code Online (Sandbox Code Playgroud)

结果是 20。

想要第 20 周的所有日期。最终输出应该是

dates=['2019-05-12','2019-05-13','2019-05-14','2019-05-15','2019-05-16','2019-05-17','2019-05-18']
Run Code Online (Sandbox Code Playgroud)

请帮我。

python datetime python-2.7

5
推荐指数
2
解决办法
7565
查看次数

在 Pandas 中将“年份”和“一年中的一周”列转换为“日期”

想要的方式

为了将带有年份和一周的两列转换为日期,我希望执行以下操作:

df['formatted_date'] = df.year*100+df.weekofyear
df['date'] = pd.to_datetime(df['formatted_date'], format='%Y%w')
Run Code Online (Sandbox Code Playgroud)

但是,它不起作用,给出了ValueError

ValueError: unconverted data remains: 01
Run Code Online (Sandbox Code Playgroud)

解决方法

我发现的解决方法是将一年中的一周转换为一年中的一天并使用 year-dayofyear%Y%j格式:

df['formatted_date'] = df.year*1000+df.weekofyear*7-6 
df['date'] = pd.to_datetime(df['formatted_date'], format='%Y%j')
Run Code Online (Sandbox Code Playgroud)

第一行变得丑陋,但这工作正常。一年中的第几周在 (00,53) 范围内。任何想法,为什么优雅的方式不起作用?

python datetime pandas

4
推荐指数
1
解决办法
4020
查看次数

在Python中获取给定周数的第一天和最后一天

我需要一个函数,该函数分别返回给定星期数(和年份)的第一天和最后一天的星期一和星期日。

在1月1日不是星期一的几周里有困难,所以我无法使用这个标准datetime.datetime.strptime()

python datetime

2
推荐指数
1
解决办法
2613
查看次数

Python - 从星期几、年份和周数中获取日期

我有: 一周数 一年中的一天 我想从中找到日期。如何在 Python 中做到这一点?

例如 2020 周 1 周六 预计产量 01/04/2020

python datetime pandas

2
推荐指数
1
解决办法
125
查看次数

标签 统计

python ×7

datetime ×6

pandas ×5

django ×1

numpy ×1

python-2.7 ×1

python-3.x ×1