【发布时间】:2020-10-27 15:37:42
【问题描述】:
我正在读取 CSV 文件。
df = pd.read_csv('xyz.csv',parse_dates=['last_time'])
last_tweeted 列的dtype 是datetime64[ns]。
该列仅包含1 datetime64[ns],其余均为NaT。
df
last_time
0 NaT
1 NaT
2 NaT
3 NaT
4 2020-07-07 15:53:26.798844
我想新建一个专栏time_since。
df['time_since'] = df[df['last_time'] - datetime.datetime.now()]
我阅读了一堆问题,但无法弄清楚问题所在。
我收到以下错误:
Traceback(最近一次调用最后一次): 文件“/usr/local/lib/python3.6/dist-packages/IPython/core/interactiveshell.py”,第 3331 行,在 run_code 执行(code_obj,self.user_global_ns,self.user_ns) 文件“”,第 1 行,在 df['trial'] = df[df['last_time'] - datetime.datetime.now()] getitem 中的文件“/home/xxx/.local/lib/python3.6/site-packages/pandas/core/frame.py”,第 2806 行 indexer = self.loc._get_listlike_indexer(key, axis=1, raise_missing=True)[1] _get_listlike_indexer 中的文件“/home/xxx/.local/lib/python3.6/site-packages/pandas/core/indexing.py”,第 1553 行 keyarr,索引器,o._get_axis_number(轴),raise_missing=raise_missing _validate_read_indexer 中的文件“/home/xxx/.local/lib/python3.6/site-packages/pandas/core/indexing.py”,第 1640 行 raise KeyError(f"[{key}] 中没有 [{axis_name}]") KeyError: "没有 [TimedeltaIndex([NaT, NaT, NaT, NaT, NaT, NaT, NaT, NaT,\n '-1 天 +23:06:31.564892', NaT, NaT],\n dtype='timedelta64 [ns]', freq=None)] 位于 [columns]"
我做错了什么?我假设 NaT 的计算将被忽略,或者我会得到一个 timedelta 列和一堆 NaT 的。
【问题讨论】: