📅  最后修改于: 2023-12-03 14:53:07.343000             🧑  作者: Mango
在 Pandas 中,可以通过 sort_values()
方法来对 DataFrame 进行排序。而针对日期类型的排序,则需要先将日期转换为时间戳,再进行排序。
下面以示例代码演示如何按日期对 Pandas DataFrame 进行排序:
import pandas as pd
# 创建示例 DataFrame
df = pd.DataFrame({'date': ['2022-06-01', '2022-06-03', '2022-06-02'],
'value': [1, 3, 2]})
# 将日期转换为时间戳
df['date'] = pd.to_datetime(df['date'])
# 按日期对 DataFrame 进行排序
df = df.sort_values(by='date')
# 打印排序后的 DataFrame
print(df)
输出结果:
date value
0 2022-06-01 1
2 2022-06-02 2
1 2022-06-03 3
在示例代码中,首先创建了一个示例 DataFrame,其中包含了日期和相关数值。接着,将日期列通过 pd.to_datetime()
方法转换为时间戳格式。最后,通过 sort_values()
方法按照日期列的值来对 DataFrame 进行排序。
需要注意的是,sort_values()
方法默认是升序排序,如果需要进行降序排序,则需要设置参数 ascending=False
。
除了将日期转换为时间戳的方法,还可以使用 sort_index()
方法按照日期列的索引进行排序。具体示例如下:
import pandas as pd
# 创建示例 DataFrame
df = pd.DataFrame({'date': ['2022-06-01', '2022-06-03', '2022-06-02'],
'value': [1, 3, 2]})
# 将日期转换为时间戳
df['date'] = pd.to_datetime(df['date'])
# 将日期列设置为索引
df = df.set_index('date')
# 按日期索引对 DataFrame 进行排序
df = df.sort_index()
# 打印排序后的 DataFrame
print(df)
输出结果与前面的示例代码相同。
综上所述,按照日期对 Pandas DataFrame 进行排序,需要先将日期转换为时间戳或者设置日期列为索引。接着,使用 sort_values()
或 sort_index()
方法来对 DataFrame 进行排序。