首页 > 解决方案 > 熊猫数据框导出行列值

问题描述

我使用 read_clipboard 将数据从 Excel 导入 python pandas。

   import pandas as pd
    df = pd.read_clipboard()

列索引是月份(一月、二月、...、十二月)。行索引是产品名称(橙色、香蕉等)。单元格中的值是月销售额。

如何导出以下格式的 csv

month;product;sales

为了使其更直观,我在第一张图像中显示了输入,以及输出应该如何在第二张图像中显示。

在此处输入图像描述

在此处输入图像描述

标签: pandascsv

解决方案


您也可以使用 xlrd 包。样本 Book1.xlsx:

        january february    march
Orange     4       2         4
banana     2       6         3
apple      5       1         7

示例代码:

import xlrd

book = xlrd.open_workbook("Book1.xlsx")

print(book.sheet_names())

first_sheet = book.sheet_by_index(0)
row1 = first_sheet.row_values(0)

print(first_sheet.nrows)

for i in range(len(row1)):
    if i !=0:
        next_row = first_sheet.row_values(i)
        for j in range(len(next_row)-1):
                print("{};{};{}".format(row1[i],next_row[0],next_row[j+1]))

结果:

january;Orange;4.0
january;Orange;2.0
january;Orange;4.0
february;banana;2.0
february;banana;6.0
february;banana;3.0
march;apple;5.0
march;apple;1.0
march;apple;7.0

推荐阅读