我正在研究一個分析推文的專案,我首先嘗試將 created_at 列轉換為日期時間。
format = "%Y-%m-%d %H:%M:%S"
df['created_at_datetime'] = pd.to_datetime(df['created_at'], format = format).dt.tz_localize(None)
我不斷收到以下錯誤
我正在上一個關于分析 Twitter 的非常入門和初級的課程,所以我根本不是編碼專家。在這行代碼起作用之前,我已經完成了家庭作業,所以不確定現在的錯誤是什么。
我在 Colab 作業,這是完整的:https ://colab.research.google.com/drive/1XXJsoMQouzH-1t7eWRd1c-fsrI3vYFcf?usp=sharing 。
謝謝!
uj5u.com熱心網友回復:
檢查'created_at'列中的所有值是否為您所期望的格式的時間戳。似乎某些行可能有字串"en"而不是時間戳。
uj5u.com熱心網友回復:
試試這個 :
format_y = "%Y-%m-%d %H:%M:%S"
pd.to_datetime(date, format = format_y).tz_localize(None)
uj5u.com熱心網友回復:
您需要找到不適合的罪魁禍首值。這是作業流程:
import pandas as pd
raw_dt_series = pd.Series(['2022-05-05', 'foobar','2022-05-02', '202', None])
raw_dt_series_notna = raw_dt_series.dropna()
dt_series = pd.to_datetime(raw_dt_series_notna, errors='coerce')
輸出:
0 2022-05-05
1 NaT
2 2022-05-02
3 NaT **< - Treated as np.NaN in pandas**
dtype: datetime64[ns]
您找到了引發型別錯誤的行。
raw_dt_series_notna.loc[dt_series.isna()]
是時候調查給定值不符合格式的原因了。發現后,調整格式引數:
pd.to_datetime(raw_dt_series, format='%YOUR%NEW%FORMAT)
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/472607.html
