1.生成时间序列数据
pd.date_range('1/1/2020', periods=10, freq='D')
相关参数设置:
pd.date_range(
start=None,
end=None,
periods=None,
freq=None,
tz=None,
normalize=False,
name=None,
closed=None,
**kwargs,
) -> pandas.core.indexes.datetimes.DatetimeIndex
----------
start : 字符串或类日期,可选
用于生成日期的左边界。
end : 字符串或类日期时间,可选
生成日期的右界。
periods : int,可选
要生成的周期数。
freq : 字符串或日期偏移,默认为 "D
频率字符串可以是倍数,例如 "5H"。参见
频率别名列表。
频率别名列表。
tz : str 或 tzinfo,可选
用于返回本地化 DatetimeIndex 的时区名称,例如
亚洲/香港"。默认情况下,生成的 DatetimeIndex 是
不受时区限制。
normalize : bool, 默认为 False
在生成日期范围前将开始/结束日期归一化为午夜。
name:str,默认为无
生成的 DatetimeIndex 的名称。
closed : {None, 'left', 'right'}, 可选
根据给定的频率使时间间隔闭合到
左"、"右 "或两边(默认为 None)。
**kwargs
用于兼容。对结果无影响。
2.升降序排列
df.sort_values('date', ascending=False)
将数据框按照date列降序排列,去掉ascending默认升序排列
3.查询时间范围内数据
df.loc[(df['date'] >= '2024-01-01') & (df['date'] <= '2024-02-23')]
df.loc
是 Pandas 中用于基于标签进行索引和选择数据的方法。通过 df.loc
,你可以按行标签和列标签来访问数据框中的特定行和列,以及对它们进行设置。、
4.时间戳转换
from datetime import datetime
# 定义原始日期字符串
date_str = "20230310"
# 使用 strptime 函数将字符串解析为日期对象
date_obj = datetime.strptime(date_str, "%Y%m%d")
print(date_obj)
# 将日期对象格式化为需要的日期字符串格式
formatted_date = date_obj.strftime("%Y-%m-%d")
print(formatted_date)
5.计算移动平均值
import pandas as pd
data = [10, 15, 20, 25, 30, 35, 40, 45, 50, 55] # 时间序列数据
window_size = 3 # 移动平均窗口大小
# 将数据转为 Pandas 的 Series 对象
series = pd.Series(data)
# 计算移动平均值
moving_avg = series.rolling(window=window_size).mean()
print(moving_avg)