Hướng dẫn convert minutes to datetime python - chuyển đổi phút sang trăn ngày giờ

2

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Dữ liệu:

Tôi có một cột dữ liệu với thời gian trong vài phút.

data_df = [2000, 4000, 392, 600]

Câu hỏi:

Làm thế nào tôi có thể chuyển đổi nó thành một tuần, ngày, giờ và phút thành định dạng DateTime mà gấu trúc có thể giải quyết?

Example:

Giả sử thời gian = 0 tương ứng với '01 -jan-2010 00:00 ', làm thế nào để tôi chuyển đổi 2000 phút thành 02-tháng 1-2010 09:20'.

Khi được hỏi ngày 14 tháng 5 năm 2016 lúc 12:44May 14, 2016 at 12:44

Hướng dẫn convert minutes to datetime python - chuyển đổi phút sang trăn ngày giờ

Xây dựng một TimedeltaIndex từ cột đó và thêm vào ngày ban đầu của bạn:

In [6]:
df['time'] = dt.datetime(2010,1,1) + pd.TimedeltaIndex(df['minutes'], unit='m')
df

Out[6]:
   minutes                time
0     2000 2010-01-02 09:20:00
1     4000 2010-01-03 18:40:00
2      392 2010-01-01 06:32:00
3      600 2010-01-01 10:00:00

Đã trả lời ngày 14 tháng 5 năm 2016 lúc 12:49May 14, 2016 at 12:49

EdchumedchumEdChum

353K195 Huy hiệu vàng778 Huy hiệu bạc550 Huy hiệu Đồng195 gold badges778 silver badges550 bronze badges

0

Trong bài viết này, chúng tôi sẽ thảo luận về ba cách khác nhau để thêm phút vào dấu thời gian nhất định trong Python. Sử dụng Timedelta, Gandas hoặc Relativingelta.

Giả sử chúng ta có dấu thời gian làm định dạng chuỗi và chúng ta muốn thêm N phút vào nó. Ở đây n có thể là bất kỳ số nào. Nhưng điều bắt được là, chúng tôi muốn dấu thời gian cuối cùng chỉ ở định dạng chuỗi đã cho, sau khi thêm N phút vào nó. Hãy để xem cách làm điều đó,

Thêm phút vào dấu thời gian trong Python bằng cách sử dụng TimeDelta

Python có một mô -đun DateTime để thao tác ngày và giờ. Nó bao gồm các lớp sau, ngày, thời gian, datetime, Timedelta, TZinfo. Để thêm N phút trong một dấu thời gian nhất định, chúng tôi sẽ sử dụng hai lớp của mô -đun DateTime, tức là DateTime và Timedelta.datetime module for the manipulation of date and time. It consists of following classes,date, time, datetime, timedelta, tzinfo. To add N minutes in a given timestamp, we are going to use two classes of the datetime module i.e. datetime and timedelta.

Các bước để thêm N phút vào DateTime như sau,

  • Bước 1: Nếu dấu thời gian đã cho ở định dạng chuỗi, thì hãy chuyển đổi nó thành đối tượng DateTime bằng hàm DateTime.strptime (). Nếu không, bạn có thể bỏ qua bước này. If the given timestamp is in string format, then convert it to the datetime object using datetime.strptime() function. Otherwise you can skip this step.
  • Bước 2: Tạo một đối tượng của Timedelta, để biểu thị khoảng N phút. Đối với điều đó, vượt qua các phút đối số với giá trị n trong hàm tạo thời gian. Create an object of timedelta, to represent an interval of N minutes. For that, pass the argument minutes with value N in the timedelta constructor.
  • Bước 3: Thêm đối tượng TimeDelta vào đối tượng DateTime được tạo trong Bước 1. Nó sẽ cung cấp cho chúng ta một đối tượng DateTime mới, chỉ vào dấu thời gian mới, tức là n phút sau dấu thời gian đã cho. Add the timedelta object to the datetime object created in step 1. It will give us a new datetime object, pointing to a new timestamp i.e. N minutes after the given timestamp.
  • Bước 4: Nếu bạn cần dấu thời gian cuối cùng trong chuỗi, thì hãy sử dụng strftime () để chuyển đổi đối tượng DateTime thành chuỗi. Đối với điều đó, chuyển chuỗi định dạng làm đối số sang strftime () và nó sẽ chuyển đổi đối tượng DateTime thành một chuỗi của định dạng được chỉ định. If you need the final timestamp in string, then use strftime() to convert the datetime object to string. For that, pass the format string as argument to strftime() and it will convert the datetime object to a string of the specified format.

Hãy để hiểu với một ví dụ,

Quảng cáo

Thêm 15 phút vào dấu thời gian trong Python

from datetime import datetime
from datetime import timedelta

# Given timestamp in string
time_str = '23/2/2020 11:12:22.234513'
date_format_str = '%d/%m/%Y %H:%M:%S.%f'

# create datetime object from timestamp string
given_time = datetime.strptime(time_str, date_format_str)

print('Given timestamp: ', given_time)

n = 15
# Add 15 minutes to datetime object
final_time = given_time + timedelta(minutes=n)

print('Final Time (15 minutes after given time ): ', final_time)

# Convert datetime object to string in specific format 
final_time_str = final_time.strftime('%d/%m/%Y %H:%M:%S.%f')
print('Final Time as string object: ', final_time_str)

Đầu ra

Given timestamp:  2020-02-23 11:12:22.234513
Final Time (15 minutes after given time ):  2020-02-23 11:27:22.234513
Final Time as string object:  23/02/2020 11:27:22.234513

Chúng tôi đã thêm 15 phút vào dấu thời gian ,2323 /2/2020 11:12:22.234513 để làm cho nó2323/02/2020 11: 27: 22.234513.

Nó đã thêm một thời gian (thời lượng 15 phút) vào đối tượng DateTime, do đó, nó đã trả về một đối tượng DateTime mới chỉ vào dấu thời gian mới. Sau đó, nó đã chuyển đổi đối tượng DateTime cuối cùng thành định dạng chuỗi cần thiết bằng cách sử dụng DateTime.strftime (). Nếu bạn muốn chuỗi dấu thời gian cuối cùng ở một số định dạng khác, thì bạn có thể thay đổi chuỗi định dạng trong khi sử dụng strptime () & strftime ().

Thêm phút để có dấu thời gian nhất định trong Python bằng cách sử dụng gấu trúc

Pandas cung cấp một lớp DateOffset, để lưu trữ thông tin thời lượng hoặc khoảng thời gian. Nó chủ yếu được sử dụng trong việc tăng hoặc giảm dấu thời gian. Nó có thể được sử dụng với mô -đun DateTime để thêm N phút vào DateTime. Hãy để hiểu với một ví dụ,DateOffset class, to store the duration or interval information. It is mainly used in incrementing or decrementing a timestamp. It can be used with datetime module to add N minutes to a datetime. Let’s understand with an example,

Thêm 3 phút vào DateTime trong Python

from datetime import datetime
import pandas as pd

# Given timestamp in string
time_str = '23/2/2020 11:12:22.234513'
date_format_str = '%d/%m/%Y %H:%M:%S.%f'

# create datetime object from timestamp string
given_time = datetime.strptime(time_str, date_format_str)

print('Given timestamp: ', given_time)

n = 3
# Add 3 minutes to datetime object
final_time = given_time + pd.DateOffset(minutes=n)

print('Final Time (3 minutes after given time ): ', final_time)

# Convert datetime object to string in specific format 
final_time_str = final_time.strftime('%d/%m/%Y %H:%M:%S.%f')
print('Final Time as string object: ', final_time_str)

Đầu ra

Given timestamp:  2020-02-23 11:12:22.234513
Final Time (3 minutes after given time ):  2020-02-23 11:15:22.234513 
Final Time as string object:  23/02/2020 11:15:22.234513

Chúng tôi đã thêm 15 phút vào dấu thời gian ,2323 /2/2020 11:12:22.234513 để làm cho nó2323/02/2020 11: 27: 22.234513.DateOffset object by passing minutes argument as 3. Then added that to the datetime object. It returned a new datetime object pointing to a different timestamp i.e. after 3 minutes from the given timestamp.

Nó đã thêm một thời gian (thời lượng 15 phút) vào đối tượng DateTime, do đó, nó đã trả về một đối tượng DateTime mới chỉ vào dấu thời gian mới. Sau đó, nó đã chuyển đổi đối tượng DateTime cuối cùng thành định dạng chuỗi cần thiết bằng cách sử dụng DateTime.strftime (). Nếu bạn muốn chuỗi dấu thời gian cuối cùng ở một số định dạng khác, thì bạn có thể thay đổi chuỗi định dạng trong khi sử dụng strptime () & strftime ().

Thêm phút để có dấu thời gian nhất định trong Python bằng cách sử dụng gấu trúcdateutil module, there is a class relativedelta which represents an interval of time. This relativedelta class has all the attributes to represent a duration i.e. Year, Month, Day, Hours, Minutes, Seconds and Microseconds.

Pandas cung cấp một lớp DateOffset, để lưu trữ thông tin thời lượng hoặc khoảng thời gian. Nó chủ yếu được sử dụng trong việc tăng hoặc giảm dấu thời gian. Nó có thể được sử dụng với mô -đun DateTime để thêm N phút vào DateTime. Hãy để hiểu với một ví dụ,

Thêm 3 phút vào DateTime trong Python

from datetime import datetime
from dateutil.relativedelta import relativedelta

# Given timestamp in string
time_str = '23/2/2020 11:12:22.234513'
date_format_str = '%d/%m/%Y %H:%M:%S.%f'

# create datetime object from timestamp string
given_time = datetime.strptime(time_str, date_format_str)

print('Given timestamp: ', given_time)

n = 30
# Add 30 minutes to datetime object
final_time = given_time + relativedelta(minutes=n)

print('Final Time (30 minutes after given time ): ', final_time)

# Convert datetime object to string in specific format 
final_time_str = final_time.strftime('%d/%m/%Y %H:%M:%S.%f')
print('Final Time as string object: ', final_time_str)

Đầu ra

Given timestamp:  2020-02-23 11:12:22.234513
Final Time (30 minutes after given time ):  2020-02-23 11:42:22.234513
Final Time as string object:  23/02/2020 11:42:22.234513

Chúng tôi đã thêm 15 phút vào dấu thời gian ,2323 /2/2020 11:12:22.234513 để làm cho nó2323/02/2020 11: 27: 22.234513.

Summary:

Nó đã thêm một thời gian (thời lượng 15 phút) vào đối tượng DateTime, do đó, nó đã trả về một đối tượng DateTime mới chỉ vào dấu thời gian mới. Sau đó, nó đã chuyển đổi đối tượng DateTime cuối cùng thành định dạng chuỗi cần thiết bằng cách sử dụng DateTime.strftime (). Nếu bạn muốn chuỗi dấu thời gian cuối cùng ở một số định dạng khác, thì bạn có thể thay đổi chuỗi định dạng trong khi sử dụng strptime () & strftime ().

Làm cách nào để thêm phút vào DateTime?

Sử dụng lớp TimeDelta () từ mô -đun DateTime để thêm phút vào DateTime, ví dụ: Kết quả = dt + Timedelta (phút = 10). Lớp Timedelta có thể được truyền một đối số phút và thêm số phút được chỉ định vào DateTime. Đã sao chép!, e.g. result = dt + timedelta(minutes=10) . The timedelta class can be passed a minutes argument and adds the specified number of minutes to the datetime. Copied!

Làm cách nào để chuyển đổi phút và giây sang vài giờ trong Python?

24*3600 kể từ một giờ có 3600 giây (60*60) và một ngày có 24 giờ ...
Nhận giá trị giờ.Để có được giá trị giờ từ vài giây, chúng tôi sẽ sử dụng toán tử phân chia sàn (//).....
Nhận giá trị phút.....
Nhận giá trị giây.....
Hoàn thành mã ..

Làm thế nào để bạn có được HH MM SS trong Python?

Sử dụng hàm tạo Timedelta () và chuyển giá trị giây cho nó bằng đối số giây.Chất xây dựng Timedelta tạo ra đối tượng Timedelta, biểu thị định dạng thời gian tính theo ngày, giờ, phút và giây (ngày, HH: MM: SS.MS).. The timedelta constructor creates the timedelta object, representing time in days, hours, minutes, and seconds ( days, hh:mm:ss.ms ) format.

Làm thế nào để bạn chuyển đổi thời gian trong Python?

Có hai chức năng thời gian Python mà bạn sử dụng để chuyển đổi thời gian.struct_time đối tượng cho một chuỗi: asctime ()..
%D: Ngày của tháng ..
%M: Tháng trong năm ..
%Y: năm ..