标签: string-to-datetime

Sql Server字符串到日期转换

我想转换像这样的字符串:

'10/15/2008 10:06:32 PM'
Run Code Online (Sandbox Code Playgroud)

进入Sql Server中的等效DATETIME值.

在Oracle中,我会说:

TO_DATE('10/15/2008 10:06:32 PM','MM/DD/YYYY HH:MI:SS AM')
Run Code Online (Sandbox Code Playgroud)

这个问题暗示我必须将字符串解析为其中一种标准格式,然后使用其中一种代码进行转换.对于如此平凡的行动来说,这似乎是荒谬的.有没有更简单的方法?

t-sql sql-server datetime sql-server-2005 string-to-datetime

176
推荐指数
8
解决办法
88万
查看次数

为什么pandas.to_datetime对于非标准时间格式(例如'2014/12/31')来说很慢

我有这样格式的.csv文件

timestmp, p
2014/12/31 00:31:01:9200, 0.7
2014/12/31 00:31:12:1700, 1.9
...
Run Code Online (Sandbox Code Playgroud)

当读取pd.read_csv并使用时间str转换为datetime时pd.to_datetime,性能会急剧下降.这是一个最小的例子.

import re
import pandas as pd

d = '2014-12-12 01:02:03.0030'
c = re.sub('-', '/', d)

%timeit pd.to_datetime(d)
%timeit pd.to_datetime(c)
%timeit pd.to_datetime(c, format="%Y/%m/%d %H:%M:%S.%f")
Run Code Online (Sandbox Code Playgroud)

而且表现是:

10000 loops, best of 3: 62.4 µs per loop
10000 loops, best of 3: 181 µs per loop
10000 loops, best of 3: 82.9 µs per loop
Run Code Online (Sandbox Code Playgroud)

那么,我怎样才能提高pd.to_datetime从csv文件中读取日期的性能?

python csv python-datetime string-to-datetime pandas

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

如何将numpy.timedelta64转换为分钟

我在Pandas DataFrame中有一个日期时间列,我想将其转换为分钟或秒.

例如:我想转换00:27:00为27分钟.

example = data['duration'][0]
example
Run Code Online (Sandbox Code Playgroud)

结果: numpy.timedelta64(1620000000000,'ns')

实现这一目标的最佳方法是什么?

numpy string-to-datetime pandas

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

NSDateFormatter返回错误的日期+ Swift

代码:

let dateString = "2016-04-02"
    var formatter: NSDateFormatter = NSDateFormatter()
    formatter.timeZone = NSTimeZone(abbreviation: "GMT +3:00")
    formatter.dateFormat = "yyyy-MM-dd"
    println("dateString: \(dateString)")
    formatter.locale =  NSLocale(localeIdentifier: "en_US_POSIX")
    let date = formatter.dateFromString(dateString)
    println("date: \(date)")

    formatter.dateFormat = "yyyy-MM-dd"
    let formattedDateString = formatter.stringFromDate(date!)
    println("formattedDateString: \(formattedDateString)")
Run Code Online (Sandbox Code Playgroud)

输出:

dateString: 2016-04-02
date: Optional(2016-04-01 21:00:00 +0000)
formattedDateString: 2016-04-02
2016-04-01 21:00:00 +0000
Run Code Online (Sandbox Code Playgroud)

我试图将字符串转换为NSDate数据类型,但没有得到正确的值.我尝试了很多解决方案,但它没有返回正确的值.我需要yyyy-MM-dd格式(2016-04-02)与我的输入"2016-04-02"相同.如果有人可以提供帮助,那将是真正的帮助.提前致谢

nsdate nsdateformatter string-to-datetime swift

11
推荐指数
4
解决办法
2万
查看次数

将unix时间戳转换为twitter/facebook样式

我正在尝试将unix时间戳转换为facebook和twitter.例如,当您在Twitter/Facebook上看到推文或评论时,您会看到显示的日期/时间如下:

'2分钟前'或'2天前'或'2周前'

有没有人知道任何功能让它像这样工作.我猜这将是一个自定义的.

任何帮助深表感谢

php datetime timestamp unix-timestamp string-to-datetime

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

使用特殊时区格式的strptime%z

我正在使用从Teradata导出的.csv数据.有几列原本是带时区的时间戳,所以在加载R中的.csv之后,我想将这些列(作为字符串加载)转换为POSIXlt或POSIXct.我正在使用strptime,但.csv文件中的时区格式与strptime预期的不匹配.例如,它希望-0400但.csv具有-04:00冒号分隔小时和分钟的格式.

我可以删除结肠,但这是一个额外的步骤和复杂性我想尽可能避免.有没有办法让strptime时区(%z)使用不同的格式?

这是一个例子:

## Example data:
x <- c("2011-10-12 22:17:13.860746-04:00", "2011-10-12 22:17:13.860746+00:00")
format <- "%Y-%m-%d %H:%M:%OS%z"

## Doesn't work:
strptime(x,format)
## [1] NA NA

## Ignores the timezone:
as.POSIXct(x)
## [1] "2011-10-12 22:17:13 EDT" "2011-10-12 22:17:13 EDT"

## Remove the last colon:
x2 <- gsub("(.*):", "\\1", x)
x2
## [1] "2011-10-12 22:17:13.860746-0400" "2011-10-12 22:17:13.860746+0000"

## This works, but requires extra processing (removing the colon)
strptime(x2,format)
## [1] "2011-10-12 …
Run Code Online (Sandbox Code Playgroud)

timezone r strptime string-to-datetime

8
推荐指数
1
解决办法
2898
查看次数

如何在BigQuery中将dd/mm/yyyy字符串转换为日期?

我有3列1.dd/mm/yyyy(存储为字符串)2.app_id和#downloads的应用程序

我必须在一周内找到下载的独特应用程序ID.

谢谢

datetime casting string-to-datetime google-bigquery

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

如何使用 Python Pandas to_datetime 方法修复 ParserError:year 0 is out of range:0000-00-00

我正在尝试将列“travel_start”转换为日期时间对象。

Dashboard["travel_start"] = pd.to_datetime(Dashboard["travel_start"])
Run Code Online (Sandbox Code Playgroud)

但我收到以下错误:

ParserError: year 0 is out of range: 0000-00-00
Run Code Online (Sandbox Code Playgroud)

当我尝试从数据框中的列中过滤“travel_start”列时。我看到下面的日期:

4922     0000-00-00
5592     0000-00-00
6647     0000-00-00
6796     0000-00-00
6941     0000-00-00
8223     0000-00-00
8391     0000-00-00
10137    0000-00-00
10197    0000-00-00
10744    0000-00-00
11128    0000-00-00
12304    0000-00-00
12511    0000-00-00
13307    0000-00-00
13681    0000-00-00
14381    0000-00-00
15160    0000-00-00
16330    0000-00-00
17734    0000-00-00
18148    0000-00-00
19389    0000-00-00
19643    0000-00-00
20372    0000-00-00
21412    0000-00-00
21757    0000-00-00
21879    0000-00-00
21978    0000-00-00
23216    0000-00-00
24375    0000-00-00
25660    0000-00-00
Run Code Online (Sandbox Code Playgroud)

对此的计数表明,这种情况发生了 56 次,我认为使用这些错误将其转换为 NaT 并不明智。你认为我可以把它们改成什么?或者做?

非常感谢您的意见。谢谢

datetime dataframe string-to-datetime pandas

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

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

MySQL的STR_TO_DATE()函数

我把这种格式的日期5 Mar 1985 0:00存储在表格中VARCHAR.
我想把它转换成Datetime,我使用STR_TO_DATE()如下:

SELECT STR_TO_DATE(birth_date, '%d %m %Y %h:%i') FROM student WHERE pk = 29
Run Code Online (Sandbox Code Playgroud)

但它回来了NULL.

mysql date string-to-datetime

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