我使用.read_excel
将一个大的Excel文件读入pandas,其中包含日期列。在被读入pandas时,日期会默认转换成时间戳。由于文件很大,我希望读取日期时将其作为字符串。
如果不可能的话,那么我至少希望能够以与原始文件相同的格式(例如"8/18/2009"
)将日期导出回Excel。
我的两个问题是:
- 我可以避免在pandas中将Excel日期转换为时间戳吗?
- 如果不可能,如何高效地将日期以原始格式写回?
我使用.read_excel
将一个大的Excel文件读入pandas,其中包含日期列。在被读入pandas时,日期会默认转换成时间戳。由于文件很大,我希望读取日期时将其作为字符串。
如果不可能的话,那么我至少希望能够以与原始文件相同的格式(例如"8/18/2009"
)将日期导出回Excel。
我的两个问题是:
import pandas as pd
df = pd.read_excel(
"file_to_read.xlsx",
sheet_name="sheetname",
)
writer = pd.ExcelWriter(
"file_to_write.xlsx",
engine="xlsxwriter",
datetime_format="mm/dd/yyyy",
)
df.to_excel(
writer,
index=False,
header=True,
sheet_name="sheetname",
)
pandas.read_excel(xlsx, sheet, converters={'Date': str})
df['Date'][0].strftime('%Y/%m/%d')
我曾经遇到过同样的问题。 以下是解决方法:
df = pd.read_excel(excel_link, sheet_name, dtype=str)
如果您不介意将df或整个列转换为字符串