Pandas 在保留索引列的同时转置熊猫中的数据帧

Pandas 在保留索引列的同时转置熊猫中的数据帧,pandas,indexing,dataframe,transpose,Pandas,Indexing,Dataframe,Transpose,问题是,当我转置数据帧时,转置后的数据帧的标题成为索引数值,而不是“id”列中的值。有关示例,请参见以下原始数据: 我想转置的原始数据(但保持0,1,2,…索引不变,并在最终转置的数据帧中将“id”更改为“id2”) DataFrame在我转置后,请注意标题是索引值,而不是“id”值(这是我所期望和需要的) 逻辑流 首先,这有助于去除作为标题的数字索引: 然后,这有助于摆脱作为标题的索引编号,但现在“id”和“index”被洗牌了:& 但现在我的id和索引值由于某种原因被打乱了 如何解决此问

问题是,当我转置数据帧时,转置后的数据帧的标题成为索引数值,而不是“id”列中的值。有关示例,请参见以下原始数据:

我想转置的原始数据(但保持0,1,2,…索引不变,并在最终转置的数据帧中将“id”更改为“id2”)
DataFrame在我转置后,请注意标题是索引值,而不是“id”值(这是我所期望和需要的)

逻辑流

首先,这有助于去除作为标题的数字索引:

然后,这有助于摆脱作为标题的索引编号,但现在“id”和“index”被洗牌了:&

但现在我的id和索引值由于某种原因被打乱了

如何解决此问题,使列为[ID2600MPE,au565…]?

如何才能更有效地执行此操作?

这是我的密码:

DF = pd.read_table(data,sep="\t",index_col = [0]).transpose() #Add index_col = [0] to not have index values as own row during transposition
m, n = DF.shape
DF.reset_index(drop=False, inplace=True)
DF.head()

这并没有多大帮助:

如果我理解你的例子,你会遇到这样的情况:
transpose
将实际索引(0…n序列作为列标题)。首先,如果你想保留数字索引,你可以将其存储为
id2

DF['id2'] = DF.index
现在,如果希望
id
作为列标题,则必须将其设置为索引,覆盖默认索引:

DF.set_index('id',inplace=True)
DF.T
我没有复制您的数据,但这将为您提供跨列的
id