Python timedelta64[ns]->;FutureWarning:不推荐传递timedelta64数据类型数据,这将在将来的版本中引发TypeError
假设Python timedelta64[ns]->;FutureWarning:不推荐传递timedelta64数据类型数据,这将在将来的版本中引发TypeError,python,python-3.x,pandas,matplotlib,plot,Python,Python 3.x,Pandas,Matplotlib,Plot,假设df['time']来自类型timedelta64[ns]和df['a']以及df['b']来自类型float64,这两个序列可以这样绘制: import pandas as pd import matplotlib.pyplot as plt fig, axs = plt.subplots(2, sharex=True) time_values = pd.to_datetime(df['time']) axs[0].plot(time_values, df['a']) axs[1].pl
df['time']
来自类型timedelta64[ns]
和df['a']
以及df['b']
来自类型float64
,这两个序列可以这样绘制:
import pandas as pd
import matplotlib.pyplot as plt
fig, axs = plt.subplots(2, sharex=True)
time_values = pd.to_datetime(df['time'])
axs[0].plot(time_values, df['a'])
axs[1].plot(time_values, df['b'])
plt.show()
这很有效。。但给出了以下警告:
FutureWarning: Passing timedelta64-dtype data is deprecated, will raise a TypeError in a future version
那么应该使用什么来代替pd.to_datetime来显示
timedelta64[ns]
作为matplotlib
中的人类可读时间呢?在使用pandas从SQL中读取时间数据时,我面临同样的问题。这两条线解决了我的问题。我试图找到另一个直接的解决办法,但没有成功
time_values = df['time'].apply(lambda x: np.nan if pd.isnull(x) else str(x)[-8:])
time_values = pd.to_datetime(time_values, format='%H:%M:%S').dt.time
pd.到_timedelta
?@QuangHoang将熊猫作为pd导入