我有一个三次重复的数据集,看起来像这样:

conc rep1 rep2 rep3
0    0.1  0.2  0.1
1    3    3.2  2.8


我想重新组织它,以便有一个x列(conc)和一个y列:

conc y-data
0    0.1
0    0.2
0    0.1
1    3
1    3.2
1    2.8


我需要这样组织它,以便可以将其提供给曲线拟合函数,该函数仅接受x数据的一列/列表和y数据之一。我该怎么做呢?我考虑过以某种方式切断每列的x值,以使3个数据帧具有conc和rep#,然后串联到我想要的N x 2数据集结构中。但我找不到该怎么做。解决此问题也可能是一种不好的方法。

最佳答案

使用melt

df.melt('conc').drop('variable',1).sort_values('conc')
Out[40]:
   conc  value
0     0    0.1
2     0    0.2
4     0    0.1
1     1    3.0
3     1    3.2
5     1    2.8

关于python - 将N x 4个 Pandas 数据帧重新排序为N x 2,以便将一式三份的数据集排列为一个x列和一个y列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53055941/

10-12 21:44
查看更多