簡體   English   中英

在Python中附加數據幀時出現內存錯誤

[英]Memory Error while append data frames in Python

我是剛接觸Python和使用pandas數據框架進行數據處理的人。 我想處理測量數據(* .mf4)。 這將通過使用包asammdf讀入並創建一個熊貓數據框。

我最初的嘗試是通過使用字典對測量數據(單個文件)進行分組。 為了對數據進行后期處理,我總是必須遍歷字典以獲取數據幀。 我發現了groupby方法,並認為它可能比我的字典嘗試更好。 最初,我將數據幀的行數限制為最多10行,在此行之有效。 現在以完整大小的數據(行數= 20000000)運行時,我在pandas數據框中出現了內存錯誤。

*new_values = new_values[argsort]

MemoryError *

data_frame.info()的輸出提供以下內容:

RangeIndex: 18410041 entries, 0 to 18410040
Data columns (total 12 columns):
dtypes: float64(8), int16(1), int32(1), int64(2)
memory usage: 1.5 GB

應該創建大約30個data_frame,並將其追加到一個。

from asammdf import MDF
import pandas as pd

data_mi = pd.DataFrame()

for file in mf4_files:

 with MDF(file) as mdf_file:
 data_frame = mdf_file.to_dataframe(channels=labels)  # export mdf-data

 speed = int(config_data[file][0])  # speed
 load = config_data[file][1]  # load

 data_frame = data_frame.assign(load=load,speed=speed)
 data_frame.reset_index(inplace=True)

#data_mi = data_mi.append(data_frame.iloc[:10])
 data_mi = data_mi.append(data_frame) #select all data in one data frame


data_mi_max = data_mi.groupby(['load','speed'],sort=False).max()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM