首页 > 解决方案 > 从熊猫数据框中获取垂直到水平列表

问题描述

我从数据框中导入了一些数据。擅长

import pandas as pd

ExcelPrincipal = pd.ExcelFile('calculus.xlsx')

DEntr = ExcelPrincipal.parse('Hoja1')

idr = []
for i in range(len(DEntr)):
    idr.append([DEntr.values[i][0],DEntr.values[i][1],DEntr.values[i][2],
                DEntr.values[i][7],DEntr.values[i][8],DEntr.values[i][9]])

print('The list is: ','\n',idr)

使用我制作的代码,我设法将它们传递给列表,但水平地,获得以下结果:

[[1, 'CC', 1, 2.5, 0, 0], [2, 'CC', 1, 2.5, 0, 0], [3, 'CC', 2, 2.5, 0, 0], [ 4, 'VV', 1, 4.0, -2200, -1000], [5, 'VV', 2, 5.0, -2200, -1000]]

但我真正想要的是让我的数据框列水平打印,如下所示:

[[1, 2, 3, 4, 5], ['CC', 'CC', 'CC', 'VV', 'VV'], [1, 1, 2, 1, 2], [2.5, 2.5, 2.5, 4, 5], [0, 0, 0, -2200, -2200], [0, 0, 0, -1000, -1000]]

我非常感谢他们各自的贡献,最好的问候。

标签: pythonpython-3.xlistdataframe

解决方案


我认为这会帮助你:

df = pd.DataFrame([[1, 'CC', 1, 2.5, 0, 0], [2, 'CC', 1, 2.5, 0, 0], [3, 'CC', 2, 2.5, 0, 0], [ 4, 'VV', 1, 4.0, -2200, -1000], [5, 'VV', 2, 5.0, -2200, -1000]]).T

输出:

     0    1    2      3      4
0    1    2    3      4      5
1   CC   CC   CC     VV     VV
2    1    1    2      1      2
3  2.5  2.5  2.5      4      5
4    0    0    0  -2200  -2200
5    0    0    0  -1000  -1000

推荐阅读