首先,我必须说我对Python和Pandas还比较陌生,但是我想在将来更多地使用它们,因此我正在尝试。由于我的工作,我经常使用Excel,经常遇到这样的问题:数据(行)有它们的属性(列),但有时一些数据(行)可能有第三维度。下面是一个简单的熊猫数据帧示例来说明我的意思:
df = pd.DataFrame(data={"obs":[["test1","test2"],"test1"],
"result":[[101,103],200]},index=["subj1","subj2"])
df
obs result
subj1 [test1, test2] [101, 103]
subj2 test1 200
你一般是怎么处理的?我读过术语“整理数据”,其中每个值都应该有自己的单元格。我应该为每个异常主题添加列=>;obs1、obs2、result1、result2还是添加行,例如:subject1\u 1、subject1\u 2由于属性(列)保持不变,什么更有意义。多重索引在这里有意义吗?我读了一点,但我还不知道如何有效地使用它们。我一直在寻找那个话题,但什么也帮不了我。你知道吗
在你的例子中,我认为subj不是一个好的索引。我建议使用数值增量索引或多索引。以后更容易处理。举个例子:
让我们考虑一下,您要计算每个唯一主题的平均结果。因为所有数据点都有自己的行,所以可以使用panda的函数:groupby和mean。你知道吗
或者如果你想计算每个主题和对象的平均值
如果您在从excel导入数据后遇到列表中的数据点,我建议您编写一个函数,将1中的n行和跨1个轴的apply行组合起来
希望有帮助!你知道吗
相关问题 更多 >
编程相关推荐