【问题标题】:Reading from csv into Dataframe referenced from Dictionary从 csv 读取到从 Dictionary 引用的 Dataframe
【发布时间】:2020-08-14 19:20:15
【问题描述】:

我正在尝试将多个 csv 文件读入数据帧。 我已将 csv 的名称与字典中的数据框相关联:

dfs = dict()
dfs['DictProject'] = config.DictProject

然后我调用以下函数来读取 csv:

def readDict():
    global dfs
    for name, df in dfs.items():
        if os.path.exists(os.path.join(config.PrjRoot, name+".csv")) == True:
            df = pd.read_csv(os.path.join(config.PrjRoot, name+".csv"), index_col=1)
            display(df)
    return None

我希望将 DictProject.csv 加载到数据框 config.DictProject 中。 csv 被正确读取,但未读入 config.DictProject。

感谢您的帮助

【问题讨论】:

  • 能否请您发布您解决此问题的尝试?还有config是什么类型的?是DataFrame还是DictProjectDataFrame?
  • 上面的代码是我最接近的,我不知道从哪里开始。 config.DictProject 是 Dataframe - 它在模块之间共享。

标签: python csv dataframe dictionary


【解决方案1】:

一种解决方案是使用动态代码:

def readDict():
    global dfs
    for name, df in dfs.items():
        if os.path.exists(os.path.join(config.PrjRoot, name+".csv")) == True:
            df = pd.read_csv(os.path.join(config.PrjRoot, name+".csv"), index_col=1)
            prgtxt = 'config.' + name + ' = df'
            exec(prgtxt)
    return None

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多