Python 从列标题到列值
我转置了一个DF,其中列包含日期和行变量。所以它现在将日期的形式作为列标题(但我希望它们是名为Date的列值),并且行现在是列 如何从列标题移动到列vuales,以便将最初的标题日期和现在的索引日期转换为名为“date”的新变量,谢谢Python 从列标题到列值,python,transpose,Python,Transpose,我转置了一个DF,其中列包含日期和行变量。所以它现在将日期的形式作为列标题(但我希望它们是名为Date的列值),并且行现在是列 如何从列标题移动到列vuales,以便将最初的标题日期和现在的索引日期转换为名为“date”的新变量,谢谢 Current df c d a 1 2 b 3 4 我想要这个 df col1 col2 col3 0 a c 1 1 a d 2 2 b c 3 3 b d
Current df
c d
a 1 2
b 3 4
我想要这个
df
col1 col2 col3
0 a c 1
1 a d 2
2 b c 3
3 b d 4
你可以试试这个。您可能希望在之后重命名该列
df.stack().reset_index()
要重命名列,还可以尝试使用rename()命令
当前df
df = pd.DataFrame([
{'c': 1, 'd': 2},
{'c': 3, 'd': 4}], index=['a', 'b'])
c d
a 1 2
b 3 4
期望测向
df = df.stack().reset_index()
df.columns = ['col1', 'col2', 'col3']
你写的答案和我写的完全一样。你可以很好地编辑我的,而不是复制它,这是一项很好的运动!当我忙于我的工作时,我没有注意到你的解决方案。此外,我们的方法也不同:
df.rename(columns={'level_0':'col1','level_1':'col2',0:'col3'})
vsdf.columns=['col1','col2','col3']
df = df.stack().reset_index()
df.columns = ['col1', 'col2', 'col3']