我有一个大的SPSS文件(包含略多于1百万个记录,大约150列),我想将其转换为Pandas DataFrame。
将文件转换为列表需要几分钟时间,再将其转换为数据帧需要另外几分钟,然后再需要几分钟来设置列标题。
我是否错过了任何可能的优化方法?
import pandas as pd
import numpy as np
import savReaderWriter as spss
raw_data = spss.SavReader('largefile.sav', returnHeader = True) # This is fast
raw_data_list = list(raw_data) # this is slow
data = pd.DataFrame(raw_data_list) # this is slow
data = data.rename(columns=data.loc[0]).iloc[1:] # setting columnheaders, this is slow too.
inplace=True
,这样就可以在不返回副本的情况下完成操作。data.rename(columns=data.loc[0], inplace=True).iloc[1:]
- EdChum