如何使用For Loops将数据从Excel导出到Python?
我已经弄清楚如何使用For循环打印Excel电子表格中的数据,但是我知道我想将每列作为不同的variables导出,以便我可以操纵它们,例如使用plot.ly绘制graphics
我到目前为止所使用的是;
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)
这只是从电子表格打印到我的terminal,这是没有用的所有数字。
但是我想要这样的东西;
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)
这将为每列声明不同的variables。 但据我所知,从错误信息我似乎使用For循环错误,我不熟悉For循环在Python中,我只有真正在Matlab中使用它们。
*编辑*固定缩进的问题,在原来的代码罚款,而不是错误的来源。
我喜欢pandas
这种事情。
你可以创build一个DataFrame
对象来保存你正在寻找的所有数据:
import pandas as pd df = pd.read_excel('myfile.xlsx', sheetname='Sheet1')
现在你可以通过数据框的名字来访问每个列,所以如果你有一个名为“mynumbers”(idk)的列,你会得到它的py做:
print df['mynumbers']
或者你可以遍历所有的列使用:
for col in df.columns: print df[col]
那么你可以做任何你喜欢的事情,包括一些内置的绘图,可视化和统计,如果你看看文档。
也许:
for j in range(1,4): for i in range(2,8785): print "%d" %sheet.cell_value(i,j)
更好地展示你的错误