转置表然后设置并重命名索引

2024-01-08

我想转置表并重命名索引。

如果我显示df with existing index Time I get

Time  v1   v2
1     0.5  0.3
2     0.2  0.1
3     0.3  0.3

之后df.transpose() I'm at

Time  1    2    3
v1    0.5  0.2  0.3
v2    0.3  0.1  0.3

有趣的是,如果我现在这样做df.Time I get

AttributeError: 'DataFrame' object has no attribute 'Time'

尽管它显示在输出中。

我找不到轻松重命名列的方法Time to Variable并将其设置为新索引..

I tried df.reset_index().set_index("index")但我得到的是看起来像这样的东西:

Time   1    2    3
index
v1     0.5  0.2  0.3
v2     0.3  0.1  0.3

您只需将列名称重命名为rename_axis http://pandas.pydata.org/pandas-docs/stable/whatsnew.html#changes-to-rename:

print (df.transpose().rename_axis('Variable', axis=1))
Variable    1    2    3
v1        0.5  0.2  0.3
v2        0.3  0.1  0.3

或者通过分配名称设置新的列名称:

df1 = df.transpose()
df1.columns.name = 'Var'
print (df1)
Var    1    2    3
v1   0.5  0.2  0.3
v2   0.3  0.1  0.3

但我认为你需要设置新列index然后重命名列index to var,还将列名称重置为None:

df1 = df.transpose().reset_index().rename(columns={'index':'var'})
df1.columns.name = None
print (df1)
  var    1    2    3
0  v1  0.5  0.2  0.3
1  v2  0.3  0.1  0.3
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

转置表然后设置并重命名索引 的相关文章

随机推荐