在python中,如何将3级行转换为分隔列?
我有一个表,其中一列有3个级别,我想将每个级别转换为3个独立的列 它只有3个级别,但第三个级别是多种多样的(不是经常有2个值,它可以有更多的值,或者它也可能只有2个级别) 第一列是在python中,如何将3级行转换为分隔列?,python,transpose,Python,Transpose,我有一个表,其中一列有3个级别,我想将每个级别转换为3个独立的列 它只有3个级别,但第三个级别是多种多样的(不是经常有2个值,它可以有更多的值,或者它也可能只有2个级别) 第一列是tag,它只存在于一行中,我希望在对表进行转置后,字符串也存在于另一行中 如果列只有两个级别,则detail列将填充与desc列相同的值 预期的表格如下所示: tag type desc detail progress setting ea 10-T Mineral
tag
,它只存在于一行中,我希望在对表进行转置后,字符串也存在于另一行中
如果列只有两个级别,则detail
列将填充与desc
列相同的值
预期的表格如下所示:
tag type desc detail progress setting ea
10-T Mineral bottom Girder 1 1
10-T Mineral bottom Girder 2 1
10-T Mineral up Shell 1 2
10-T Mineral up Shell 2 3
40-T Fresh Roof Wind 1 2
40-T Fresh Roof Wind 2 5,5
40-T Fresh Up Up 6
我应该如何使用
df.transpose
来获取预期的表?没有直接的命令会给出您要查找的结果,因为相关任务编号在进度列中以逗号分隔的列表形式给出。您必须首先去掉层次索引,然后循环遍历所有行,并在progress列中复制具有多个数字的任何行
tag type desc detail progress setting ea
10-T Mineral bottom Girder 1 1
10-T Mineral bottom Girder 2 1
10-T Mineral up Shell 1 2
10-T Mineral up Shell 2 3
40-T Fresh Roof Wind 1 2
40-T Fresh Roof Wind 2 5,5
40-T Fresh Up Up 6