我希望根据日期列按降序对Pandas 数据框的值进行排序,但也要考虑名称、产品和发布版本列的重复值,以便排序包含连续行中基于重复的名称、产品和发布版本列的行.但我没能得到想要的结果.
以下是我编写的示例代码:
data = {
'Name': ['John', 'Alice', 'John', 'Bob', 'Alice', 'Bob', 'Alice', 'Bob'],
'Product': ['A', 'B', 'A', 'C', 'B', 'C', 'B', 'C'],
'Release Version': ['1.6', '2.0', '1.5', '3.0', '2.5', '3.2', '2.6', '2.8'],
'Date': ['2022-05-15', '2022-04-20', '2022-05-10', '2022-05-01', '2022-04-25', '2022-05-05', '2022-04-29', '2022-04-27']
}
# Create a DataFrame
df = pd.DataFrame(data)
# Convert the 'Date' column to datetime
df['Date'] = pd.to_datetime(df['Date'])
# Sort values based on 'Date' in descending order and 'Name', 'Product', 'Release Version' columns
df = df.sort_values(['Date', 'Name', 'Product', 'Release Version'], ascending=[False, True, True, False])
这为我提供了以下结果:
Name Product Release Version Date
John A 1.6 2022-05-15
John A 1.5 2022-05-10
Bob C 3.2 2022-05-05
Bob C 3.0 2022-05-01
Alice B 2.6 2022-04-29
Bob C 2.8 2022-04-27
Alice B 2.5 2022-04-25
Alice B 2.0 2022-04-20
预期的结果是这样的:
Name Product Release Version Date
John A 1.6 2022-05-15
John A 1.5 2022-05-10
Bob C 3.2 2022-05-05
Bob C 3.0 2022-05-01
Bob C 2.8 2022-04-27
Alice B 2.6 2022-04-29
Alice B 2.5 2022-04-25
Alice B 2.0 2022-04-20
如果有人能帮我解决这个问题就太好了.