在熊猫数据帧的第一个单元格中设置值

时间:2021-01-12 15:06:18

标签: python pandas csv

在我的 Python 脚本中,我正在初始化一个字典,该字典随后将作为嵌套字典进行管理。更新并使用它后,我想将它保存为 csv 文件作为永久存储,以便我稍后再次读取它,然后再次更新等等。

我的问题如下。为了使用嵌套字典,它具有以下结构:

dict = {
    'key1': {
        'grp1': 0,
        'grp2': 2
    }
}

使用 Pandas,我可以使用 data = pd.DataFrame(dict) 完美地将其导出为 csv 文件,然后我可以将其用作 Libre Calc 或 Excel 中的表格,如下所示:

<头>
grp1 2
grp2 4

但是,我还想在(表格)单元格 0,0(上表左上角的单元格)中有一个标题,以便我可以在 Excel 中进行排序、分组、执行其他操作等。< /p>

但我不知道如何以简单快捷的方式做到这一点。

DataFrame.iat 没有这样做,因为它似乎只访问单元格中除标题/标签之外的值。

我也可以读入 csv 文件,拆分行,在开头添加“headername”并再次输出 csv 文件,但在我看来,这似乎占用了太多空间/内存。

似乎也无法读取 csv 的第一行(即标题),然后仅更改该行并将其写回 csv 而不触及其余部分,还是我弄错了?< /p>

难道没有类似于 DataFrame.iat 或已弃用的 DataFrame.set_value 的东西在一行中完成工作吗?

我也希望题名没问题!

1 个答案:

答案 0 :(得分:1)

您可以使用:

cols <- c("a", "b")
dummy_cols(df[cols], remove_selected_columns=TRUE)
#   a_blue a_green a_yellow b_blue b_green b_yellow
# 1      0       1        0      1       0        0
# 2      0       0        1      0       0        1
# 3      1       0        0      0       1        0
df = pd.DataFrame({'key1': {'grp1': 0,
                            'grp2': 2
                           }
                  })


df.reset_index().rename(columns={'index':'your_value'})

当您使用 your_value key1 0 grp1 0 1 grp2 2 pass df.to_csv() 保存文件时,您将不会在最左侧看到那些 index=False 索引。