标签: strptime

如何仅绘制包含日期的时间戳的时间部分?

所以我有一组这样的时间戳:

datetime<-c("2011-09-28 03:33:00", "2011-08-24 13:41:00", "2011-09-19 16:14:00", "2011-08-18 11:01:00", "2011-09-17 06:35:00", "2011-08-15 12:48:00")
Run Code Online (Sandbox Code Playgroud)

我想制作一个只有时间的直方图.我所做的是在空格处拆分列以仅获取时间,然后转换回POSIXct对象以便qplot绘制它:

library(ggplot2, stringr)    
qplot(as.POSIXct(strptime((str_split_fixed(as.character(time), " ", 2)[,2]), "%H:%M:%S")))
Run Code Online (Sandbox Code Playgroud)

但是,输出as.POSIXct(strptime((str_split_fixed(as.character(datetime), " ", 2)[,2]), "%H:%M:%S"))

"2011-10-04 03:33:00 PDT" "2011-10-04 13:41:00 PDT" "2011-10-04 16:14:00 PDT" "2011-10-04 11:01:00 PDT" "2011-10-04 06:35:00 PDT" "2011-10-04 12:48:00 PDT"
Run Code Online (Sandbox Code Playgroud)

qplot描绘了我想要的东西,但这对我来说似乎是一个令人费解的黑客.当然有更好的方法来做到这一点?我可以转换为纪元时间和情节,但我试图避免不得不这样做作为额外的一步.

更大的问题是,"我如何控制strptime的输出?"

timestamp r strptime ggplot2

13
推荐指数
1
解决办法
1万
查看次数

为什么c ++标准支持函数strftime而不是strptime?

为什么C++标准支持功能strftime()但不支持strptime()strftime()可以将时间更改为字符串,但是没有可以将字符串更改回时间的函数.

在Posix strptime()上可以使用类似C的函数,使用它需要处理混合C和C++代码的潜在问题.

c c++ posix strftime strptime

13
推荐指数
1
解决办法
1561
查看次数

模块“datetime”没有属性“strptime”

我对编程完全陌生,我正在尝试使用 Python 来使用 Pythin 读取 CSV 文件。我正在使用 Spyder 执行此操作。我收到错误“模块‘datetime’没有属性‘strptime’”,并且无法弄清楚。任何帮助将不胜感激。这是我的代码:

import os
import csv
from datetime import datetime

path=csvpath=os.path.join("..","Practice","Google Stock Market Data - 
google_stock_data.csv")
file=open(path,newline="")
reader=csv.reader(file)
header=next(reader)

data=[]      
Run Code Online (Sandbox Code Playgroud)

对于读卡器中的行:

date=datetime.strptime(row[0], '%m/%d/%y')
Run Code Online (Sandbox Code Playgroud)

这是我收到的错误消息。

date=datetime.strptime(row[0], '%m/%d/%y')

AttributeError: module 'datetime' has no attribute 'strptime'
Run Code Online (Sandbox Code Playgroud)

datetime strptime attributeerror

13
推荐指数
1
解决办法
9331
查看次数

一个更快的strptime?

我的代码以"YYYY-MM-DD"格式读取大量日期.解析所有这些日期,以便它可以添加一天,两天或三天,然后以相同的格式回写,这会大大减慢速度.

 3214657   14.330    0.000  103.698    0.000 trade.py:56(effective)
 3218418   34.757    0.000   66.155    0.000 _strptime.py:295(_strptime)

 day = datetime.datetime.strptime(endofdaydate, "%Y-%m-%d").date()
Run Code Online (Sandbox Code Playgroud)

有任何建议如何加快一点(或很多)?

python performance strptime

12
推荐指数
2
解决办法
3724
查看次数

dplyr不按日期对数据进行分组

我试图计算人们使用Leada提供的数据集所采取的自行车频率.

这是代码:

library(dplyr)

setAs("character", "POSIXlt", function(from) strptime(from, format = "%m/%d/%y %H:%M"))
d <- read.csv("http://mandrillapp.com/track/click/30315607/s3-us-west-1.amazonaws.com?p=eyJzIjoiemxlVjNUREczQ2l5UFVPeEFCalNUdmlDYTgwIiwidiI6MSwicCI6IntcInVcIjozMDMxNTYwNyxcInZcIjoxLFwidXJsXCI6XCJodHRwczpcXFwvXFxcL3MzLXVzLXdlc3QtMS5hbWF6b25hd3MuY29tXFxcL2RhdGF5ZWFyXFxcL2Jpa2VfdHJpcF9kYXRhLmNzdlwiLFwiaWRcIjpcImEyODNiNjMzOWJkOTQxMGM5ZjlkYzE0MmQ0NDQ5YmU4XCIsXCJ1cmxfaWRzXCI6W1wiMTVlYzMzNWM1NDRlMTM1ZDI0YjAwODE4ZjI5YTdkMmFkZjU2NWQ2MVwiXX0ifQ",
              colClasses = c("numeric", "numeric", "POSIXlt", "factor", "numeric", "POSIXlt", "factor", "numeric", "numeric", "factor", "character"),
              stringsAsFactors = T)
names(d)[9] <- "BikeNo"

d <- tbl_df(d)

d <- d %>% mutate(Weekday = factor(weekdays(Start.Date)))
d %>% group_by(Weekday) 
  %>% summarise(Total = n()) 
  %>% select(Weekday, Total)
Run Code Online (Sandbox Code Playgroud)

这很奇怪,但是dplyr不希望按工作日分组数据说:

错误:列'Start.Date'具有不受支持的类型

为什么它关心Start.Date列,我按哪个因素分组?您可以在本地运行代码以重现错误:它将自动下载数据.

PS我使用的是dplyr版本:dplyr_0.3.0.2

r strptime dplyr

12
推荐指数
1
解决办法
9103
查看次数

TypeError:使用strptime时必须是string,而不是datetime.datetime

我试图在Python 2.7中编写一个函数,将一系列数字转换为有效的日期.到目前为止,这一切都与转换有关.

这是相关代码:

import datetime

def convert_date(x,y,z):
    orig_date = datetime.datetime(x,y,z)
    d = datetime.datetime.strptime(str(orig_date), '%Y-%m-%d %H:%M:%S')
    result = d.strftime('%m-%d-%Y')
    return orig_date

a = convert_date(13,11,12)
print a
Run Code Online (Sandbox Code Playgroud)

每当我运行这个,我得到:

回溯(最近一次调用最后一次):文件"test.py",第9行,在= convert_date(13,11,12)文件"test.py",第5行,在convert_date d = datetime.datetime.strptime(orig_date) ,'%Y-%m-%d%H:%M:%S')

TypeError:必须是string,而不是datetime.datetime

我知道这是因为strptime给了我一个datetime object,但我怎么能让它起作用呢?

python datetime strptime typeerror

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

为什么python的datetime.datetime.strptime('201412','%Y%m%d')没有引发ValueError?

按照我给出的格式,日期2014-01-02将由"20140102"表示.这是使用标准strptime正确解析的:

>>> datetime.datetime.strptime("20140102", "%Y%m%d")
datetime.datetime(2014, 1, 2, 0, 0)
Run Code Online (Sandbox Code Playgroud)

在此格式中,"201412"将不是有效日期.该文档说,"%M"指令是"每月一零填充的十进制数." 它给出了例子"01,02,...,12".days指令"%d"也应该是零填充的.

基于此,我预计"201412"将是这种格式的无效输入,因此会引发ValueError.相反,它被解释为2014-01-02:

>>> datetime.datetime.strptime("201412", "%Y%m%d")
datetime.datetime(2014, 1, 2, 0, 0)
Run Code Online (Sandbox Code Playgroud)

问题是:有没有办法指定"没有严重的零填充"?或者我在这种背景下误解了"零填充"一词?

请注意,问题不是关于如何以这种格式解析日期,而是关于理解strptime的行为.

python datetime strptime

10
推荐指数
2
解决办法
1135
查看次数

格式化在Django中作为字符串提供的日期时间

在我的Django应用程序中,我从作为字符串提供的web服务中获取时间,我在模板中使用:

{{date.string}}
Run Code Online (Sandbox Code Playgroud)

这为我提供了一个日期,例如:

2009-06-11 17:02:09+0000
Run Code Online (Sandbox Code Playgroud)

这些显然有点难看,我想以一种很好的格式向我的用户展示它们.Django有一个很棒的内置日期格式化程序,可以完全按照我想要的方式执行:

{{ value|date:"D d M Y" }}
Run Code Online (Sandbox Code Playgroud)

但是,这要求将值作为日期对象提供,而不是字符串.所以我不能用它来格式化它.在这里搜索StackOverflow pythons strptime似乎做我想要的,但对Python来说相当新我想知道是否有人能想出一个更简单的方法来使用字符串获取日期格式,而不必诉诸于编写一个全新的自定义strptime模板标签?

python django time date strptime

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

使用am/pm解析时间戳

我有一个格式化时间戳的文件 25/03/2011 9:15:00 p.m.

如何使用strptimeas.POSIXct?将此文本解析为Date-Time类?

这几乎是有效的:

> as.POSIXct("25/03/2011 9:15:00", format="%d/%m/%Y %I:%M:%S", tz="UTC")
[1] "2011-03-25 09:15:00 UTC"
Run Code Online (Sandbox Code Playgroud)

这是什么不起作用,但我想工作:

> as.POSIXct("25/03/2011 9:15:00 p.m.", format="%d/%m/%Y %I:%M:%S %p", tz="UTC")
[1] NA
Run Code Online (Sandbox Code Playgroud)

我在MS Windows上使用R版本2.13.2(2011-09-30).我的工作区域是"C":

Sys.setlocale("LC_TIME", "C")
Run Code Online (Sandbox Code Playgroud)

timestamp r strptime

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

用R中的strptime()从字符串中提取时间,返回NA

我试图从R中的字符串中提取出时间,并且不能停止获得NA作为结果.我已经尝试了正则表达式标签的多种变体,但似乎无法解决这个简单的问题.任何帮助/澄清表示赞赏.

这是我的代码示例:

> x
[1] "2/7/2013 7:43"
> class(x)
[1] "character"
> z <- strptime(x, "%H:%M")
> z
[1] NA
Run Code Online (Sandbox Code Playgroud)

regex time r date strptime

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

标签 统计

strptime ×10

python ×4

r ×4

datetime ×3

date ×2

time ×2

timestamp ×2

attributeerror ×1

c ×1

c++ ×1

django ×1

dplyr ×1

ggplot2 ×1

performance ×1

posix ×1

regex ×1

strftime ×1

typeerror ×1