提高Pandas数据框的行追加性能

15 浏览
0 Comments

提高Pandas数据框的行追加性能

我正在运行一个基本脚本,它循环遍历嵌套字典,从每个记录中获取数据,并将其添加到Pandas DataFrame中。数据大致如下所示:

data = {"SomeCity": {"Date1": {record1, record2, record3, ...}, "Date2": {}, ...}, ...}

总共有几百万条记录。脚本本身如下所示:

city = ["SomeCity"]
df = DataFrame({}, columns=['Date', 'HouseID', 'Price'])
for city in cities:
    for dateRun in data[city]:
        for record in data[city][dateRun]:
            recSeries = Series([record['Timestamp'], 
                                record['Id'], 
                                record['Price']],
                                index = ['Date', 'HouseID', 'Price'])
            FredDF = FredDF.append(recSeries, ignore_index=True)

然而,这运行得非常慢。在寻找并行化的方法之前,我想确保我没有忽视任何明显的使其性能更快的方法,因为我对Pandas还不太熟悉。

0