【问题标题】:Error in `python3': free(): invalid pointer`python3' 中的错误:free():无效指针
【发布时间】:2018-06-18 08:02:22
【问题描述】:

我正在尝试使用 glob 模块读取 2 个目录中的所有 csv 文件:

import os
import pandas as pd
import glob


def get_list_of_group_df(filepath):
    all_group_df_list = []

    groups_path = filepath
    for file in glob.glob(groups_path):
        name = os.path.basename(file)
        name = patient_name.partition('_raw')[0]

        with open(file, 'r') as name_vcf:
            group_vcf_to_df = pd.read_csv(name_vcf, delimiter='\t', 
            header=0, index_col=False, low_memory=False,             
            usecols=['A', 'B', 'C', 'D']) 

            group_df_wo_duplicates = group_vcf_to_df.drop_duplicates()
            group_df = group_df_wo_duplicates.reset_index(drop=True)
            group_df['group_name'] = name
            all_group_df_list.append(group_df)

    return all_group_df_list

def get_freq():

    group_filepath_dict = 
  {'1_group':"/home/Raw_group/*.tsv",

'2_group':"/home/Raw_group/*.tsv"}
    for group, filepath in group_filepath_dict.items():
        print(get_list_of_group_df(filepath))


get_freq()

当我在本地运行这个脚本时,它工作得很好。但是,在 UBUNTU 服务器上运行它会给我以下错误消息:

Error in `python3': free(): invalid pointer: 0x00007fcc970d76be ***
Aborted (core dumped)

我使用的是 python 3.6.3 版本。谁能告诉我如何解决这个问题?

【问题讨论】:

  • 有没有说在哪一行?
  • 很遗憾没有
  • 嗯 ... 对我来说似乎更像是一个普遍的问题。与 Python 安装或执行脚本或访问文件的权限一样。

标签: python-3.x dataframe error-handling glob


【解决方案1】:

我在 Raspbian Buster 2020-02-13 下的 Python 3.7.3 中遇到了类似的问题。我的程序因free(): invalid pointer 而死,除了没有给出指针并且没有核心转储和堆栈跟踪。所以,我没有什么可调试的。这种情况发生过几次,通常是在程序运行一两天之后,所以我怀疑这是一个非常缓慢的内存泄漏或 Python 垃圾收集中非常罕见的间歇性错误。我自己没有做任何内存管理。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-09-17
    • 1970-01-01
    • 1970-01-01
    • 2018-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-21
    相关资源
    最近更新 更多