【问题标题】:How do you export data from Excel into Python using For Loops?如何使用 For 循环将数据从 Excel 导出到 Python?
【发布时间】:2017-07-25 13:01:11
【问题描述】:

我已经弄清楚如何使用 For 循环 打印 Excel 电子表格中的数据,但我知道我想将每一列导出为不同的变量,以便我可以操作它们,例如绘图使用 plot.ly 的图表

到目前为止,我使用的是;

import xlrd
book = xlrd.open_workbook('filelocation/file.xlsx')
sheet = book.sheet_by_index(0)

for j in range(1,4): 
    for i in range(2,8785): 
        print "%d" %sheet.cell_value(i,j)

这只是将电子表格中的所有数字打印到我的终端中,这并不是那么有用。

但我想要这样的东西;

import xlrd
book = xlrd.open_workbook('filelocation/file.xlsx')
sheet = book.sheet_by_index(0)

for j= 1: 
    for i in range(2,8785): 
        Time= "%s" %sheet.cell_value(i,j)

for j= 2:
    for i in range(2,8785): 
        SYS= "%s" %sheet.cell_value(i,j)        

将为每一列声明不同的变量。但正如我从错误消息中了解到的,我似乎错误地使用了 For 循环,我对 Python 中的 For 循环并不熟悉,我只在 Matlab 中真正使用过它们。

* EDIT * 修复了问题中的缩进,在原始代码中很好,而不是错误的来源。

【问题讨论】:

  • 可以按原样添加错误信息吗?

标签: python excel for-loop xlrd


【解决方案1】:

我喜欢 pandas 的所有这些东西。

您可以创建一个DataFrame 对象来保存您要查找的所有数据:

import pandas as pd

df = pd.read_excel('myfile.xlsx', sheetname='Sheet1')

现在您可以从该数据框中通过其名称访问每一列,因此,如果您有一个名为“mynumbers”(idk)的列,您将得到它:

print df['mynumbers']

或者您可以使用以下方法遍历所有列:

for col in df.columns:
    print df[col]

然后你可以做任何你喜欢的事情,包括一些内置的绘图、可视化和统计,如果你看看文档的话。

【讨论】:

    猜你喜欢
    • 2023-01-12
    • 1970-01-01
    • 1970-01-01
    • 2021-05-31
    • 1970-01-01
    • 1970-01-01
    • 2014-02-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多