在Python中管理数据集,以便与matplotlib一起使用

在Python中管理数据集,以便与matplotlib一起使用,python,matplotlib,Python,Matplotlib,我正在尝试用excel电子表格为matplotlib创建一些数据集 到目前为止,我已经从电子表格中提取了数据,并将所有内容都放在列表字典中;所以我有所有与每个实验相关的数据,在它自己的结构中 尽管我在将这些数据提供给matplotlib时遇到问题;因为我有不同的领域,我想得到数据来比较不同实验的结果 是否有用于在matplotlib中显示数据的基本结构?我可以用它作为我自己的例子。我通常在excel电子表格上进行数据收集和聚合,但现在我想学习如何在Python中正确地进行数据收集和聚合,这样每当

我正在尝试用excel电子表格为matplotlib创建一些数据集

到目前为止,我已经从电子表格中提取了数据,并将所有内容都放在列表字典中;所以我有所有与每个实验相关的数据,在它自己的结构中

尽管我在将这些数据提供给matplotlib时遇到问题;因为我有不同的领域,我想得到数据来比较不同实验的结果

是否有用于在matplotlib中显示数据的基本结构?我可以用它作为我自己的例子。我通常在excel电子表格上进行数据收集和聚合,但现在我想学习如何在Python中正确地进行数据收集和聚合,这样每当我得到一个带有结果的电子表格时,我就可以节省时间来进行所有计算

这是我创建的数据结构类型:

Experiment 1
    ID
    compound 1:
    compound 2:
    machine:
    reagent
    val1
    val2
    val3
    val4

    ID
    compound 1:
    compound 2:
    machine:
    reagent
    val1
    val2
    val3
    val4

Experiment 2

    ID
    compound 1:
    compound 2:
    machine:
    reagent
    val1
    val2
    val3
    val4

    ID
    compound 1:
    compound 2:
    machine:
    reagent
    val1
    val2
    val3
    val4

...
experiment N
每个实验可能有一个或多个“take”,用ID标识;化合物、机器和试剂的值在可能的选择列表中,因此在同一个实验中可能有不同的ID,使用一个或多个公共条目,因此唯一值仅为1到4之间的val

例如:

Experiment collisionA
    ID 001
    compound 1: Hg
    compound 2: Cl
    machine: SPF
    reagent: CH3COOH
    val1 0.12
    val2 0.22
    val3 0.14
    val4 1

    ID 002
    compound 1: Fe
    compound 2: Cl
    machine: SPF
    reagent CH4
    val1 0.23
    val2 0.4
    val3 0.42
    val4 0.98

Experiment collisionB

    ID 001
    compound 1: Fe
    compound 2: Cl
    machine: MIC
    reagent NaCl
    val1 0.2
    val2 0.15
    val3 0.3
    val4 0.99

...
例如,对于实验1,我想计算每个ID的val2值,这样我可以绘制它,然后绘制val1,例如,与化合物1的关系,等等

很明显,我的结构不起作用,因为外推任何需要多个过滤器的数据都非常复杂,所以我认为必须遵循一些规则,以便于管理和显示的方式获取数据


我确实查阅了一些数据库书籍,但没有发现任何有用的东西,因此在开始切线之前,我想问问你们中习惯于使用数据的人,是否可以给我一些开始的提示。

创建一个示例通常是一个好主意。然而,你正在寻找的答案是熊猫可以直接从excal表中取出你的数据,并对其进行处理和绘图。熊猫在这里也得到了很好的支持,如果关于它的问题结构合理的话。它确实有一点学习曲线,但好的工具通常都是这样;从未听说过熊猫,但这似乎是正确的答案,而不是我自己重新发明轮子和管理所有数据。谢谢熊猫绝对是一种选择。我只想提到python随附,therby提供了一个简单的数据库接口。我过去曾在类似的任务中使用过它,它工作得很好;但我一直在寻找一些与db系统无关的东西。我从实验室团队那里得到了excel文件,如果有意愿将这些数据放在数据库中,sqlite将是最好的方法,但在这一点上,因为我只需阅读一次excel文件来获取数据,我认为熊猫可能是最有效的方法。到目前为止,这看起来并不难;而且它与标准DB用法非常相似,让您感觉舒适:)