微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python-提高熊猫数据框的插补性能

我想使用大熊猫估算一个较大的数据矩阵(90 * 90000),然后估算一个更大的数据矩阵(150000 * 800000).
目前,我正在笔记本电脑上测试较小的笔记本电脑(8GB内存,Haswell核心i5 2.2 GHz,较大的数据集将在服务器上运行).

列中有一些缺失值,我想用所有行中最频繁的值来估算.

我的工作代码是:

freq_val =  pd.Series(mode(df.ix[:,6:])[0][0], df.ix[:,6:].columns.values) #most frequent value per column, starting from the first SNP column (second row of 'mode'gives actual frequencies)
df_imputed = df.ix[:,6:].fillna(freq_val) #impute unkNown SNP values with most frequent value of respective columns

插补在我的机器上花费大约20分钟.是否有另一种可以提高性能的实施方式?

解决方法:

尝试这个:

df_imputed = df.iloc[:, 6:].fillna(df.iloc[:, 6:].apply(lambda x: x.mode()).iloc[0])

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐