Hướng dẫn convert timestamp object to string python - chuyển đổi đối tượng dấu thời gian thành chuỗi python

15

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.

Tôi có một vấn đề với mã sau. Tôi nhận được một lỗi "Đối số Strptime () phải là str, không phải dấu thời gian"

Tôi đoán rằng những gì tôi nên làm là chuyển đổi ngày từ dấu thời gian sang chuỗi nhưng tôi không biết phải làm gì.

class TweetAnalyzer:

    def tweets_to_data_frame(self,ElonMuskTweets):

        df = pd.DataFrame(data=[tweet.text for tweet in ElonMuskTweets],columns=['Tweets'])

        df['Text length'] = np.array ([len(tweet.text)for tweet in ElonMuskTweets])
        df['Date and time of creation'] = np.array ([tweet.created_at for tweet in ElonMuskTweets])
        df['Likes'] = np.array ([tweet.favorite_count for tweet in ElonMuskTweets])
        df['Retweets'] = np.array ([tweet.retweet_count for tweet in ElonMuskTweets])

        list_of_dates = []   
        list_of_times = []

        for date in df['Date and time of creation']:

            date_time_obj = datetime.strptime(date, '%Y-%m-%d %H:%M:%S') 
            list_of_dates.append(date_time_obj.date())  
            list_of_times.append(date_time_obj.time())

            df['Date'] = list_of_dates
            df['Time'] = list_of_times

            df['Date'] = pd.to_datetime(df['Date'])

            start_date = '2018-04-13'
            end_date = '2019-04-13'

            mask1 = (df['Date'] >= start_date) & (df['Date'] <= end_date)
            MuskTweets18_19 = df.loc[mask1]  

            return MuskTweets18_19.to_csv ('elonmusk_tweets.csv',index=False)

Tôi nhận được lỗi trong

date_time_obj = datetime.strptime(date, '%Y-%m-%d %H:%M:%S')

Làm thế nào tôi có thể giải quyết prolem này? Cảm ơn bạn trước

Hướng dẫn convert timestamp object to string python - chuyển đổi đối tượng dấu thời gian thành chuỗi python

Benvc

Huy hiệu vàng 14K431 Huy hiệu bạc51 Huy hiệu đồng4 gold badges31 silver badges51 bronze badges

Đã hỏi ngày 1 tháng 5 năm 2019 lúc 19:26May 1, 2019 at 19:26

2

Bạn có thể ép buộc kiểu dữ liệu thành một chuỗi để thực hiện tính toán này không?

date_time_obj = datetime.strptime(str(date), '%Y-%m-%d %H:%M:%S') 

Đã trả lời ngày 1 tháng 5 năm 2019 lúc 19:53May 1, 2019 at 19:53

Hướng dẫn convert timestamp object to string python - chuyển đổi đối tượng dấu thời gian thành chuỗi python

1

Nếu nó nói "Đối số Strptime () 1 phải là Str, không phải dấu thời gian", có khả năng bạn đã có đối tượng ____10, tức là, nó không phải là một chuỗi mà là một ngày phân tích cú pháp, chỉ có ở định dạng của Pandas, không phải là Python. Vì vậy, để chuyển đổi, sử dụng điều này:

date_time_obj = date.to_pydatetime()

thay vì

date_time_obj = datetime.strptime(date, '%Y-%m-%d %H:%M:%S')
1

Đã trả lời ngày 1 tháng 5 năm 2019 lúc 19:58May 1, 2019 at 19:58

Hướng dẫn convert timestamp object to string python - chuyển đổi đối tượng dấu thời gian thành chuỗi python

adrtamadrtamadrtam

6.6532 huy hiệu vàng11 Huy hiệu bạc27 Huy hiệu đồng2 gold badges11 silver badges27 bronze badges

Nếu đối tượng là dấu thời gian Python, bạn có thể thực hiện:

timestamp = Timestamp('2017-11-12 00:00:00')

str_timestamp = str(timestamp)

Đã trả lời ngày 28 tháng 3 lúc 15:01Mar 28 at 15:01

Hướng dẫn convert timestamp object to string python - chuyển đổi đối tượng dấu thời gian thành chuỗi python

1

Chỉ cần thêm vào các câu trả lời trên khi chạy vào đầu dò sau bằng các giải pháp được cung cấp:

AttributeError: module 'datetime' has no attribute 'strptime'

Dựa trên câu trả lời được tìm thấy ở đây, bạn cần phải ép thời gian vào một chuỗi như thế này:

date_time_obj = datetime.datetime.strptime(str(date), '%Y-%m-%d %H:%M:%S') 

Hoặc đảm bảo nhập lớp chứ không chỉ các mô -đun như thế này:

from datetime import datetime

Đã trả lời ngày 28 tháng 6 lúc 19:52Jun 28 at 19:52

Hướng dẫn convert timestamp object to string python - chuyển đổi đối tượng dấu thời gian thành chuỗi python

import pandas as pd
import datetime

base = pd.to_datetime("2022-10-10")
date_list = [datetime.datetime.strftime(pd.to_datetime(base - datetime.timedelta(days=x)),"%Y-%m-%d") for x in range(7)]
print(date_list)

đầu ra sẽ được

['2022-10-10',
 '2022-10-09',
 '2022-10-08',
 '2022-10-07',
 '2022-10-06',
 '2022-10-05',
 '2022-10-04']

Đã trả lời ngày 10 tháng 10 lúc 17:42Oct 10 at 17:42

Làm cách nào để chuyển đổi dấu thời gian thành một chuỗi trong Python?

Phương thức strftime () lấy một hoặc nhiều mã định dạng làm đối số và trả về một chuỗi được định dạng dựa trên nó ...
Chúng tôi đã nhập lớp DateTime từ mô -đun DateTime. ....
Đối tượng DateTime chứa ngày và giờ hiện tại được lưu trữ trong biến bây giờ ..
Phương thức strftime () có thể được sử dụng để tạo các chuỗi được định dạng ..

Làm cách nào để chuyển đổi dấu thời gian thành một chuỗi?

Phương thức toString () của lớp java.sql.timestamp trả về định dạng thoát JDBC của dấu thời gian của đối tượng dấu thời gian hiện tại dưới dạng biến chuỗi. tức là sử dụng phương pháp này, bạn có thể chuyển đổi đối tượng dấu thời gian thành một chuỗi. sql. Timestamp class returns the JDBC escape format of the time stamp of the current Timestamp object as String variable. i.e. using this method you can convert a Timestamp object to a String.

Làm thế nào để bạn chuyển đổi một đối tượng thành một chuỗi trong Python?

Chuyển đổi đối tượng thành chuỗi mọi thứ là một đối tượng trong Python.Vì vậy, tất cả các đối tượng tích hợp có thể được chuyển đổi thành các chuỗi bằng các phương thức str () và repr ().using the str() and repr() methods.

Đối tượng dấu thời gian trong Python là gì?

Dấu thời gian là gấu trúc tương đương với DateTime của Python và có thể hoán đổi cho nó trong hầu hết các trường hợp.Đây là loại được sử dụng cho các mục tạo nên DateTimeIndex và các cấu trúc dữ liệu định hướng thời gian khác trong gấu trúc.Tham số TS_InputDateTime-giống như, str, int, float.Giá trị sẽ được chuyển đổi thành dấu thời gian.the pandas equivalent of python's Datetime and is interchangeable with it in most cases. It's the type used for the entries that make up a DatetimeIndex, and other timeseries oriented data structures in pandas. Parameters ts_inputdatetime-like, str, int, float. Value to be converted to Timestamp.