使用 .str.split() 拆分 Pandas DataFrame 列时遇到“MemoryError”。如何优化此操作的内存使用

问题描述 投票:0回答:1

我是镶木地板格式文件的初学者。我有一个时间戳(2018-08-14T15:30:00-0400),我需要更改我尝试使用 pandas 的日期和时间,但数据集有 127946340 个条目,程序显示内存错误。

df1[['Date', 'Time']] = df1['timestamp'].str.split('T', 1, expand=True)

错误

    MemoryError                               Traceback (most recent call last)
Cell In[6], line 1
----> 1 df1 = pd.DataFrame(data)
      3 # Split the datetime column into date and time columns
      4 df1[['Date', 'Time']] = df1['timestamp'].str.split('T', 1, expand=True)

首先我提取了该列,然后我尝试拆分该列,该列显示了上述错误。

python pandas apache-spark data-science parquet
1个回答
0
投票

如果我没听错,您希望将日期和时间作为单独的列。

您可以使用

to_datetime
函数来完成此操作:

df1['Date'] = pd.to_datetime(df1['timestamp']).dt.date
df1['Time'] = pd.to_datetime(df1['timestamp']).dt.time

它会给你以下输出:

    timestamp   Date    Time
0   2018-08-14T15:30:00-0400    2018-08-14  15:30:00
© www.soinside.com 2019 - 2024. All rights reserved.