How to reproduce
Suppose you have an Excel file with the following mixed-type data:
| Header |
=DATE(2024, 7, 1) |
=DATE(2024, 7, 2) |
"some string" |
Now lets read this Excel file into a Polars dataframe, which coerces the column to strings:
excel_reader.load_sheet(0).to_polars()
This produces the following data frame:
| Header |
"2024-07-01 00:00:00" |
"2024-07-02 00:00:00" |
"some string" |
Expected behavior
What I would have expected fastexcel to not include the time 00:00:00 for these dates. That is,
| Header |
"2024-07-01" |
"2024-07-02" |
"some string" |
Test case
Excel sheet: sheet-date.xlsx
def test_date_casting_to_string() -> None:
excel_reader = fastexcel.read_excel(path_for_fixture("sheet-date.xlsx"))
sheet = excel_reader.load_sheet(0, column_names=["col1"])
expected = {
"col1": ["2024-07-01", "2024-07-02", "some string"],
}
pl_assert_frame_equal(sheet.to_polars(), pl.DataFrame(expected))
How to reproduce
Suppose you have an Excel file with the following mixed-type data:
=DATE(2024, 7, 1)=DATE(2024, 7, 2)"some string"Now lets read this Excel file into a Polars dataframe, which coerces the column to strings:
excel_reader.load_sheet(0).to_polars()This produces the following data frame:
"2024-07-01 00:00:00""2024-07-02 00:00:00""some string"Expected behavior
What I would have expected fastexcel to not include the time
00:00:00for these dates. That is,"2024-07-01""2024-07-02""some string"Test case
Excel sheet: sheet-date.xlsx