使用Pandas绘制和处理日期/时间数据

时间:2018-10-15 18:17:45

标签: python pandas datetime plot

目前,我正在一个项目中,想每天绘制记录器中的数据。书面输出的格式是.csv文件,并且在列中包含日期/时间戳记 例如:2018-10-15 10:00。在其他列中,只有浮点格式的数据。从00:00到23:50,我会在10分钟的间隔内自动获得书面印章。

我希望分析数据并使用groupby()将数据按天分组*,并进一步计算一天的均值和偏差。我想将平均值和std_deviation数据绘制为散点图或折线图。主刻度线是年或月,副刻度线是天。

我想每天比较一个月内的平均值变化,并针对整个时间间隔作图,其中小时为主要刻度,每10分钟为一个小刻度。我希望能够在可能的情况下将其放入for循环中。

说实话,我尝试了很多不同的可能性,但我不能仅凭一种方法实现所有目标。如果可以的话,我将尽量不要将set_index()用作“日期/时间”列,因此更容易应用该组。为了方便起见,我正在使用Pandas模块来完成我的整个分析。

任何指导我都会很高兴。

非常感谢您!!!!

1 个答案:

答案 0 :(得分:0)

只有几个指针:

使用pd.read_csv(https://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html)读取csv时,您可以指定哪些列包含日期/时间:

df = pd.read_csv('myfile.csv', parse_dates=['date'])

然后,您可以使用.dt访问特定于日期/时间的功能,请参阅:https://pandas.pydata.org/pandas-docs/stable/api.html#datetimelike-properties

因此您可以添加仅包含日期数字的列,例如:

df['day'] = df['date'].dt.dayofyear

然后您可以按此新列分组。