标签: string-to-datetime

字符串到C#中的dateTime?

如何将以下日期字符串转换为dateTime:

Fri, 18 Dec 2009 9:38 am PST
Run Code Online (Sandbox Code Playgroud)

我试过了 DateTime.Parse(string)

我收到以下错误:

The string was not recognized as a valid DateTime. There is an unknown word starting at index 25. System.SystemException {System.FormatException}
Run Code Online (Sandbox Code Playgroud)

UPDATE

我试图从雅虎获得天气,我试图得到这样的日期:

Date = DateTime.Parse(feed.Element(yWeatherNS + "condition").Attribute("date").Value),
Run Code Online (Sandbox Code Playgroud)

我调试了它.date属性是正确的(如上所述).

谢谢.

c# string-to-datetime

3
推荐指数
2
解决办法
692
查看次数

在java中将字符串转换为日期时出错

2014-04-23T18:30:00.000Z需要在这个转换格式yyyy-MM-dd'T'hh:mm:sszzz在java中

我正在使用这个

SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd'T'hh:mm:ss.zzzZ");
Date newfromDate = new Date();
try {
    //Convert into date 
    newfromDate = (Date)formatter.parse(fromDate);

    // get required Format of date in string format 
    SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd'T'hh:mm:sszzz");
} catch (ParseException e) {
    e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

但这不起作用

错误: - java.text.ParseException: Unparseable date: "2014-03-31T18:30:00.000Z"

java date string-to-datetime

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

在python pandas中,如何将此格式化的日期字符串转换为datetime

我尝试了几种使用方法to_datetime,但到目前为止我只能将它作为"对象"返回dtype

pd.to_datetime(pd.Series(['28Dec2013 19:23:15']),dayfirst=True)
Run Code Online (Sandbox Code Playgroud)

该命令的返回值为:

0    28Dec2013 19:23:15
dtype: object
Run Code Online (Sandbox Code Playgroud)

python string-to-datetime pandas

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

将数据帧列名从字符串格式更改为datetime

我有一个数据框,其中列的名称是字符串形式的日期(年 - 月).如何以日期时间格式转换这些名称?我试过这样做:

new_cols = pd.to_datetime(df.columns)
df = df[new_cols]
Run Code Online (Sandbox Code Playgroud)

但我得到错误:

KeyError: "DatetimeIndex(
['2000-01-01', '2000-02-01',
 '2000-03-01', '2000-04-01',
 '2000-05-01', '2000-06-01', 
'2000-07-01', '2000-08-01',               
'2000-09-01', '2000-10-01',
'2015-11-01', '2015-12-01', 
'2016-01-01', '2016-02-01',
'2016-03-01', '2016-04-01', 
'2016-05-01', '2016-06-01',
'2016-07-01', '2016-08-01'],
dtype='datetime64[ns]', length=200, freq=None) not in index"
Run Code Online (Sandbox Code Playgroud)

谢谢!

python dataframe string-to-datetime pandas

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

带有format参数的pandas pd.to_datetime()给出了不正确的值

使用pd.to_dateime()传递'format ='参数可以加快处理速度,因为函数不必推断每行的格式.但是,使用'format ='参数不适用于AM/PM.以下代码:

pd.to_datetime('01/10/2017 10:15:17 PM',format = '%m/%d/%Y %H:%M:%S %p')
Run Code Online (Sandbox Code Playgroud)

得到:

时间戳('2017-01-10 10:15:17')

时间应该是22:15:17,因为原始时间有'PM'我的代码中是否存在错误或该功能是否存在问题.提前致谢!

python string-to-datetime pandas

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

Python 将 1970 年之前日期的日期格式从 dd/mm/yy 更改为 dd/mm/yyyy

我有一个 python pandas 数据框,它有一个如下所示的日期列:

'Birth Date'
0     22/04/73
1     22/03/53
2     22/04/73
3     14/08/77
4     08/05/50
Run Code Online (Sandbox Code Playgroud)

我想将此对象数据类型转换为日期格式,如下所示:04/06/1953...

我尝试转换为 datetime 数据类型,如下所示:

df['Birth Date']=pandas.to_datetime(df['Birth Date'],format='%d/%m/%y')
Run Code Online (Sandbox Code Playgroud)

但输出是这样的:

0    1973-04-22
1    2053-03-22
2    1973-04-22
3    1977-08-14
4    2050-05-08
Run Code Online (Sandbox Code Playgroud)

如何将 1953、1950 等作为年份而不是 2053、2050?

python string-to-datetime pandas

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

慢 pd.to_datetime()

我正在阅读两种非常相似的 csv 文件。它们的长度大致相同,20 000 行。每条线代表每秒记录的参数。因此,第一列是时间戳。

  • 在第一个文件中,模式如下:2018-09-24 15:38
  • 在第二个文件中,模式如下:2018-09-24 03:38:06 PM

在这两种情况下,命令是相同的:

data = pd.read_csv(file)
data['Timestamp'] = pd.to_datetime(data['Timestamp'])
Run Code Online (Sandbox Code Playgroud)

我检查两行的执行时间:

  • pd.read 在这两种情况下同样有效
  • 执行第二行代码需要大约 3 到 4 秒的时间

唯一的区别是日期模式。我不会怀疑。你知道为什么吗?你知道如何解决这个问题吗?

python string-to-datetime pandas

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

Pandas 将日期字符串(仅月份和年份)转换为日期时间

我正在尝试将日期时间对象转换为日期时间。在原始数据框中,数据类型是字符串,数据集的形状为 (28000000, 26)。重要的是,日期格式仅为 MMYYYY。这是一个数据示例:

                       DATE
Out[3]    0           081972
          1           051967
          2           101964
          3           041975
          4           071976
Run Code Online (Sandbox Code Playgroud)

我试过:

df['DATE'].apply(pd.to_datetime(format='%m%Y'))
Run Code Online (Sandbox Code Playgroud)

pd.to_datetime(df['DATE'],format='%m%Y')
Run Code Online (Sandbox Code Playgroud)

我两次都遇到运行时错误

然后

df['DATE'].apply(pd.to_datetime)
Run Code Online (Sandbox Code Playgroud)

它适用于其他未显示的列(采用 DDMMYYYY 格式),但使用 df['DATE'] 生成未来日期,因为它将日期读取为 MMDDYY 而不是 MMYYYY。

            DATE
0       1972-08-19
1       2067-05-19
2       2064-10-19
3       1975-04-19
4       1976-07-19
Run Code Online (Sandbox Code Playgroud)

期望输出:

          DATE
0       1972-08
1       1967-05
2       1964-10
3       1975-04
4       1976-07
Run Code Online (Sandbox Code Playgroud)

如果这个问题是重复的,请引导我到原来的问题,我找不到任何合适的答案。

预先感谢大家的帮助

python string-to-datetime pandas

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

如何在 Laravel 中将输入字符串转换为 strtotime

我正在使用 jQuery 日历以如下形式输入日期

<div class="form-group">
     <label>Valid From:</label>
       <div class="input-group date">
       <div class="input-group-addon">
       <i class="fa fa-calendar"></i>
</div>
<input type="text" tabindex="4" data-date-start-date="0d" class="form-
 control pull-right datepicker" name="valid_from" id="datepicker2" value="
 {{old('valid_from')}}">
 </div>
 @if ($errors->has('valid_from'))
 <span class="has-error" style="color: red">
 <strong>{{ $errors->first('valid_from') }}</strong>
 </span>
 @endif
 </div>
Run Code Online (Sandbox Code Playgroud)

我从 form 中获取2018 年 9 月 3 日形式的值。

模型代码,我尝试用 mutator 转换它,但它对模型代码不起作用

use SoftDeletes;
    protected $fillable = 
['name','valid_from','valid_to','city_id','p_limit','is_active','type'];
    protected $dates = [
//        'valid_from',
//        'valid_to',
        'deleted_at'
    ];
//    public function setDateOfBirthAttribute($dates)
//    {
//        $this->attributes['valid_from'] = Carbon::parse($dates); …
Run Code Online (Sandbox Code Playgroud)

string-to-datetime laravel laravel-5.3

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

python strptime的自定义格式指令

我必须收到一个字符串,表示通过time.strptime处理的日期,其格式类似于%d%m%Y,但事实是当日期数小于10时,那一天将显示为一位数数字,而不是%d格式所需的两位数.

这意味着

'8052012'
Run Code Online (Sandbox Code Playgroud)

将被转换为

day 08, month 05, year 2012
Run Code Online (Sandbox Code Playgroud)

但随着字符串

'2052012'
Run Code Online (Sandbox Code Playgroud)

strptime给了我

day 20, month 5, year 2012
Run Code Online (Sandbox Code Playgroud)

代替

day 2, month 5, year 2012
Run Code Online (Sandbox Code Playgroud)

有没有办法解决这个默认行为?(也许是为了强迫%m应该是一个2位数字,所以strptime将没有选择使用当天剩下的东西?)

编辑:请注意,在输入字符串上,月份总是有两位数,即使它可以用一个数字表示.这里的问题只是可以用一个或两个数字表示的那一天,具体取决于幅度......

python time strptime string-to-datetime

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

标签 统计

string-to-datetime ×10

python ×7

pandas ×6

c# ×1

dataframe ×1

date ×1

java ×1

laravel ×1

laravel-5.3 ×1

strptime ×1

time ×1