如何使用 Pandas 對 DataFrame 按日期排序?
Python 的 Pandas DataFrame 定義了一個由行和列組成的二維結構。Pandas 的主要特點是提供了一種更簡單的方式來處理給定的資料。在 Python 中,我們有一些內建函式,例如 to_datetime()、sorted()、lambda 和 sort_value(),可以用來對 Pandas DataFrame 按日期排序。
語法
以下語法在示例中使用:
to_datetime()
to_datetime() 是 Python 中的一個內建函式,用於將字串日期轉換為日期時間物件。
sorted()
Python 的內建函式 sorted() 指出列表可以按指定的可迭代物件進行排序。
lambda
Python 中的 lambda 函式被稱為匿名函式。當需要函式物件時可以使用它。此函式操作程式的主要邏輯部分。
sort_values()
sort_values() 是 Python 中的一個內建函式,用於按升序或降序對 DataFrame 進行排序。
使用 sort_values() 函式
在以下示例中,我們將從匯入 pandas 模組開始程式,該模組將用於按日期處理 DataFrame。然後建立變數 d 來定義輸入字典。接下來,使用內建函式 DataFrame() 設定 DataFrame 並將其儲存在變數 df 中。然後使用內建函式 to_datetime 設定日期的格式,並將其儲存在變數 df['Date'] 中。繼續初始化名為 Date_result 的最後一個變數,該變數儲存值為 df.sort_value() 的值,它接受兩個引數 - 'Date' 和 ascending = True 以升序對 DataFrame 進行排序。最後,它將在 Date_result 變數的幫助下列印結果。
示例
import pandas as pd
# Create a sample DataFrame
d = { 'Date': ['2023-06-26', '2023-06-27', '2023-06-28', '2023-06-29'], 'Value': [100, 200, 300, 400] }
# Set the dataframe for date
df = pd.DataFrame(d)
# Convert the 'Date' column to datetime format
df['Date'] = pd.to_datetime(df['Date'])
# Sort the dataframe in ascending order
Date_result = df.sort_values('Date', ascending=True)
# The final output
print("Result of pandas Dataframe by Date:\n", Date_result)
輸出
Result of pandas Dataframe by Date:
Date Value
0 2023-06-26 100
1 2023-06-27 200
2 2023-06-28 300
3 2023-06-29 400
使用 sorted() 函式
在以下示例中,程式使用兩種主要方法,即列表推導式和 sorted() 作為內建函式 DataFrame() 的引數來生成結果。
示例
import pandas as pd
# Create a sample DataFrame
d = { 'Date': ['2023-06-26', '2023-06-27', '2023-06-28', '2023-06-29'], 'Value': [11, 31, 456, 8534] }
# Create the dataframe
df = pd.DataFrame(d)
# Conversion of date into datetime format
df['Date'] = pd.to_datetime(df['Date'])
# using list comprehension and sorted()
res = pd.DataFrame(sorted(df.values, key=lambda x: x[0]), columns=df.columns)
# The final output
print("Result of pandas Dataframe by Date:\n", res)
輸出
Result of pandas Dataframe by Date:
Date Value
0 2023-06-26 11
1 2023-06-27 31
2 2023-06-28 456
3 2023-06-29 8534
在 sort_values() 中使用 inplace 引數
在以下示例中,程式使用內建函式 to_datetime(),它接受 df['date'] 作為引數來設定日期時間格式的列。接下來,它將使用內建函式 sort_values(),它接受兩個引數 - Date 和 inplace = true,這意味著它按日期對 DataFrame 進行排序。
示例
import pandas as pd
# Create a sample DataFrame
data = { 'Date': ['2023-06-15', '2023-06-14', '2023-06-17', '2023-06-16'], 'Value': [10, 20, 30, 40] }
df = pd.DataFrame(data)
# Convert the 'Date' column to datetime format
df['Date'] = pd.to_datetime(df['Date'])
# Sort the DataFrame by the Date column using the parameter inplace
df.sort_values('Date', inplace=True)
print(df)
輸出
Date Value 1 2023-06-14 20 0 2023-06-15 10 3 2023-06-16 40 2 2023-06-17 30
使用 to_datetime() 函式
在以下示例中,我們將使用內建函式 DataFrame(),它接受變數 data 作為引數。使用此函式將資料轉換為 DataFrame。DataFrame 通常以二維方式建立資料。接下來,使用內建函式 to_datetime() 設定給定輸入日期的格式並生成結果。
示例
import pandas as pd
# Create a sample DataFrame
data = { 'Date': ['2023-06-15', '2023-06-14', '2023-06-17', '2023-06-16'], 'Value': [10, 20, 30, 40], 'Attendance': ['Present', 'Present', 'Absent', 'Absent'] }
# Create the dataframe for date
df = pd.DataFrame(data)
# Convert the 'Date' column to datetime format
df['Date'] = pd.to_datetime(df['Date'])
print("The Dataframe of Date result:\n", df)
輸出
The Dataframe of Date result:
Date Value Attendance
0 2023-06-15 10 Present
1 2023-06-14 20 Present
2 2023-06-17 30 Absent
3 2023-06-16 40 Absent
結論
Pandas 是一個開源庫,代表著 Python 的頂級庫。在本文中,我們討論了各種方法,其中使用了一些內建函式,例如 to_datetime()、DataFrame() 等,來滿足特定條件和操作。這種型別的程式通常用於資料科學領域。
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP