【问题标题】:Problems filling DataFrames in dict of dicts在 dict 的 dict 中填充 DataFrame 的问题
【发布时间】:2021-03-15 15:37:19
【问题描述】:

我有类似空数据框矩阵的东西。

A = {'folder1':{'case1':pd.Dataframe(), 'case2':pd.Dataframe(),... , 'case8':pd.Dataframe()}\
    {'folder2':{'case1':pd.Dataframe(), 'case2':pd.Dataframe(),... , 'case8':pd.Dataframe()}\
...
    {'foldern':{'case1':pd.Dataframe(), 'case2':pd.Dataframe(),... , 'case8':pd.Dataframe()}}

其中A[folder][case] 是一个空的DataFrame。

我已经有另一个形式的非空数据帧的字典

BASIS = {'folder1':{'arch01':pd.Dataframe(...), 'arch02':pd.Dataframe(...)}\
    {'folder2':{'arch01':pd.Dataframe(...), 'arch02':pd.Dataframe(...)}\
...
    {'foldern':{'arch01':pd.Dataframe(...), 'arch02':pd.Dataframe(...)}}

其中BASIS[folder][arch] 是一个非空数据框,其中有很多行我想将其与其他A[folder]['case'] 分开。

例如,BASIS[folder]['arch01'] 将被拆分为 A[folder]['case1'] + A[folder]['case2'] + A[folder]['case3']

基本上我想在['casei']['casej'] 中划分[arch],其中'i'和'j'是某些情况发生的情况

我正在尝试以这种方式为这些数据框赋值:

for folder in ['folder1', 'folder2',... 'foldern']:
    
    IRLB = BASIS[folder]["arch01"].copy()
    condition01 = IRLB.loc[(IRLB['Column3'].str.contains('AAA',case=False))]
    A[folder]['case1'] = A[folder]['case1'].append(condition01)
    
    condition02 = IRLB.loc[(IRLB['Column3'].str.contains('BBB',case=False))]
    A[folder]['case2'] = A[folder]['case2'].append(condition02)        
    ... (and other conditions to others cases of A)

我收到以下错误: 只有 A 的最后一个文件夹被填充,其他的仍然是空的数据框。

【问题讨论】:

  • 我已经尝试过 A[folder]['case1'] = condition01 最后一个 A[folder] 只包含最后一个 foder 的 condition01。当我使用上面的代码时,A[folder] 还包含所有先前文件夹的 condition01
  • 我认为您最好使用一个数据框,该数据框还包含指示哪个文件夹和案例与每一行相关联的列

标签: python pandas dataframe dictionary


【解决方案1】:

我发现了一个错误。对不起所有浪费时间阅读它的人。 问题是: 由于我的语言是葡萄牙语,有时我会用葡萄牙语迭代文件夹,如“意大利面”, 我正在迭代“文件夹”并使用“意大利面” 由于我最后一个 Pasta 值是相对于最后一个文件夹(循环外的 Pasta = 'foldern'),所以我总是使用最后一个文件夹,而不是迭代文件夹('folder1'、'folder2'、n...)。希望这篇文章可以帮助任何人 谢谢

【讨论】:

    猜你喜欢
    • 2013-12-28
    • 2022-12-18
    • 2021-10-06
    • 2018-10-14
    • 1970-01-01
    • 2019-04-18
    • 2018-08-11
    • 2019-09-03
    • 2019-02-13
    相关资源
    最近更新 更多