【发布时间】:2021-06-28 15:07:25
【问题描述】:
如何转换具有 S(开始)、E(结束)、V(值)列的 Dataframe
S E V
1 2 3
2 5 11
5 11 5
并将其转换为:
T V
1 3
2 3
2 11
5 11
5 5
11 5
?
这样我们就可以用 V(y 轴)值在整个区间内相同的方式绘制数据。
编辑:
有些人认为这与“我如何使用melt()?”相同。问题。但是结果的顺序很重要。
【问题讨论】:
-
df.melt(id_vars='V', value_name='T')[['T', 'V']] -
melt 的问题在于顺序很重要。要使用融化,我似乎需要首先从索引中创建一个列,以便在融化后按行 ID 使用。似乎@Nk03 更好,因为有了融化,我似乎无论如何都不得不处理索引。
标签: pandas