26 lines
616 B
Python
26 lines
616 B
Python
import pandas as pd
|
|
|
|
|
|
class DataSchema:
|
|
AMOUNT = "amount"
|
|
CATEGORY = "category"
|
|
DATE = "date"
|
|
MONTH = "month"
|
|
YEAR = "year"
|
|
|
|
|
|
def load_transaction_data(path: str) -> pd.DataFrame:
|
|
# load the data from the CSV file
|
|
data = pd.read_csv(
|
|
path,
|
|
dtype={
|
|
DataSchema.AMOUNT: float,
|
|
DataSchema.CATEGORY: str,
|
|
DataSchema.DATE: str,
|
|
},
|
|
parse_dates=[DataSchema.DATE],
|
|
)
|
|
data[DataSchema.YEAR] = data[DataSchema.DATE].dt.year.astype(str)
|
|
data[DataSchema.MONTH] = data[DataSchema.DATE].dt.month.astype(str)
|
|
return data
|