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

熊猫或numpy向量化可优化内存

如何解决熊猫或numpy向量化可优化内存

我有次数据框迭代,并希望使用pandas或numpy向量化对其进行优化。到目前为止,我的代码正在消耗近5 GB的内存来存储10000个数据。请查看以下代码段:

    def helper_method(self,data):
        lines = {
            "linesAdded": 0,"linesRemoved": 0
        }
        self.logger.info("helper_method ${lines}")
        df_diffs = pd.DataFrame(data)
        df_diffs = df_diffs.fillna(0)
        data_hunks = []
        for _index_diffs,row_hunks in df_diffs.iterrows():
            if "hunks" in row_hunks.index.values and isinstance(
                    row_hunks["hunks"],list):
                data_hunks.extend(row_hunks["hunks"])
        df_segments = pd.io.json.json_normalize(
            data_hunks,"segments")
        for _index,row in df_segments.iterrows():
            if row["type"] == "ADDED":
                lines["linesAdded"] += len(row["lines"])
            if row["type"] == "REMOVED":
                lines["linesRemoved"] += len(row["lines"])
        return lines

我们如何优化内存并将其转换为向量化?

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