目前,我正在一个项目中,想每天绘制记录器中的数据。书面输出的格式是.csv文件,并且在列中包含日期/时间戳记 例如:2018-10-15 10:00。在其他列中,只有浮点格式的数据。从00:00到23:50,我会在10分钟的间隔内自动获得书面印章。
我希望分析数据并使用groupby()将数据按天分组*,并进一步计算一天的均值和偏差。我想将平均值和std_deviation数据绘制为散点图或折线图。主刻度线是年或月,副刻度线是天。
我想每天比较一个月内的平均值变化,并针对整个时间间隔作图,其中小时为主要刻度,每10分钟为一个小刻度。我希望能够在可能的情况下将其放入for循环中。
说实话,我尝试了很多不同的可能性,但我不能仅凭一种方法实现所有目标。如果可以的话,我将尽量不要将set_index()用作“日期/时间”列,因此更容易应用该组。为了方便起见,我正在使用Pandas模块来完成我的整个分析。
任何指导我都会很高兴。
非常感谢您!!!!
答案 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
然后您可以按此新列分组。