Python 如何在excel中将第一列及其值作为数据框中的列名称读取

Python 如何在excel中将第一列及其值作为数据框中的列名称读取,python,pandas,Python,Pandas,首先,我有一个Excel文件,里面有很多工作表,现在有一些工作表是这样的: | Date | 11-12-2019 | 12-12-2019 | 13-12-2019 | 14-12-2019 | 15-12-2019 | |:-----------|------------:|:------------:|:-----------|------------:|:------------:| | Col_1 | 1111 | 2222

首先,我有一个Excel文件,里面有很多工作表,现在有一些工作表是这样的:

|    Date    | 11-12-2019  | 12-12-2019   | 13-12-2019 | 14-12-2019  | 15-12-2019   |
|:-----------|------------:|:------------:|:-----------|------------:|:------------:|
| Col_1      |    1111     |     2222     | 3333       |        4444 |     5555     |
| Col_2      |    1111     |     2222     | 3333       |        4444 |     5555     |
| Col_3      |    1111     |     2222     | 3333       |        4444 |     5555     |
| Col_4      |    1111     |     2222     | 3333       |        4444 |     5555     |
| Col_5      |    1111     |     2222     | 3333       |        4444 |     5555     |
| Col_6      |    1111     |     2222     | 3333       |        4444 |     5555     |
|    Date    |    Col_1    |     Col_2    | Col_3      |   Col_4     |     Col_5    |     Col_5    |
|:-----------|------------:|:------------:|:-----------|------------:|:------------:|:------------:|
| 11-12-2019 |    1111     |     1111     | 1111       |    1111     |     1111     |     1111     |
| 12-12-2019 |    2222     |     2222     | 2222       |    2222     |     2222     |     2222     |
| 13-12-2019 |    3333     |     3333     | 3333       |    3333     |     3333     |     3333     |
| 14-12-2019 |    4444     |     4444     | 4444       |    4444     |     4444     |     4444     |
| 15-12-2019 |    5555     |     5555     | 5555       |    5555     |     5555     |     5555     |
import xlwings as xw
sht = xw.Book().sheets[0]
pd_df = sht.range('reference to cells with data').options(transpose = True, pd.DataFrame, index = True, header = True).value
我想让熊猫数据框变成这样:

|    Date    | 11-12-2019  | 12-12-2019   | 13-12-2019 | 14-12-2019  | 15-12-2019   |
|:-----------|------------:|:------------:|:-----------|------------:|:------------:|
| Col_1      |    1111     |     2222     | 3333       |        4444 |     5555     |
| Col_2      |    1111     |     2222     | 3333       |        4444 |     5555     |
| Col_3      |    1111     |     2222     | 3333       |        4444 |     5555     |
| Col_4      |    1111     |     2222     | 3333       |        4444 |     5555     |
| Col_5      |    1111     |     2222     | 3333       |        4444 |     5555     |
| Col_6      |    1111     |     2222     | 3333       |        4444 |     5555     |
|    Date    |    Col_1    |     Col_2    | Col_3      |   Col_4     |     Col_5    |     Col_5    |
|:-----------|------------:|:------------:|:-----------|------------:|:------------:|:------------:|
| 11-12-2019 |    1111     |     1111     | 1111       |    1111     |     1111     |     1111     |
| 12-12-2019 |    2222     |     2222     | 2222       |    2222     |     2222     |     2222     |
| 13-12-2019 |    3333     |     3333     | 3333       |    3333     |     3333     |     3333     |
| 14-12-2019 |    4444     |     4444     | 4444       |    4444     |     4444     |     4444     |
| 15-12-2019 |    5555     |     5555     | 5555       |    5555     |     5555     |     5555     |
import xlwings as xw
sht = xw.Book().sheets[0]
pd_df = sht.range('reference to cells with data').options(transpose = True, pd.DataFrame, index = True, header = True).value

那么,是否可以使用python pandas或任何其他库来实现这一点呢?

我们可以使用
转置来实现这一点(与相同)。然后使用以下命令将列名替换为第一行:

你也可以使用


您可以使用Python库/Excel加载项xlwings来实现这一点。代码应该是这样的:

|    Date    | 11-12-2019  | 12-12-2019   | 13-12-2019 | 14-12-2019  | 15-12-2019   |
|:-----------|------------:|:------------:|:-----------|------------:|:------------:|
| Col_1      |    1111     |     2222     | 3333       |        4444 |     5555     |
| Col_2      |    1111     |     2222     | 3333       |        4444 |     5555     |
| Col_3      |    1111     |     2222     | 3333       |        4444 |     5555     |
| Col_4      |    1111     |     2222     | 3333       |        4444 |     5555     |
| Col_5      |    1111     |     2222     | 3333       |        4444 |     5555     |
| Col_6      |    1111     |     2222     | 3333       |        4444 |     5555     |
|    Date    |    Col_1    |     Col_2    | Col_3      |   Col_4     |     Col_5    |     Col_5    |
|:-----------|------------:|:------------:|:-----------|------------:|:------------:|:------------:|
| 11-12-2019 |    1111     |     1111     | 1111       |    1111     |     1111     |     1111     |
| 12-12-2019 |    2222     |     2222     | 2222       |    2222     |     2222     |     2222     |
| 13-12-2019 |    3333     |     3333     | 3333       |    3333     |     3333     |     3333     |
| 14-12-2019 |    4444     |     4444     | 4444       |    4444     |     4444     |     4444     |
| 15-12-2019 |    5555     |     5555     | 5555       |    5555     |     5555     |     5555     |
import xlwings as xw
sht = xw.Book().sheets[0]
pd_df = sht.range('reference to cells with data').options(transpose = True, pd.DataFrame, index = True, header = True).value

谢谢你的支持,我想我需要像这样的东西,我也会接受你的回答。。。。这似乎是对的!!!:D谢谢:)我喜欢这些熊猫隐藏的宝石