这可能很愚蠢,但我需要从python中的excel中导入一些数据,其中数据打印在工作表中的某处(不是从A1位置开始)。从excel中读取数据并忽略python中的空行
... ... ... ... ... ... ... ... ... ... ... ...
... ... ... ... ... ... ... ... ... ... ...
... ... ... ... ... Timestamp a b c d
... ... ... ... ... 20/01/2016 4.3 3.2 0.3 1.3
... ... ... ... ... 19/01/2016 2.2 3.4 5.5 7.2
... ... ... ... ... 18/01/2016 4.4 2.3 3.4 5.01
我的唯一信息是其中Timestamp
位于数据开始(可以在excel表在任何地方)。它以我在这里介绍的格式显示。 我使用了两种不同的方法。从xlrd我已经实现下面的代码
items = []
for row in range(d_sheet.nrows):
for col in range(d_sheet.nrows):
items.append(d_sheet.cell(row,col))
return items
,并使用熊猫
data = pd.read_excel('file.xlsx')
data.as_matrix()
在这两种情况下,我结束了与许多空行与NaN
值。 我想一个简单的解决方案是运行该文件并找到Timestamp
元素并从该位置打印到我的文件中。但我想知道是否有其他解决方案可以自动识别在Excel表单中打印数据的位置。
p.s.理想情况下,我想以DataFrame或字典格式存储数据,以便在代码中使用索引和列信息。
如果DataFrame中有很多NaN数据,可以使用'df.dropna()',如下所示:http://pandas.pydata.org/pandas-docs/version/0.17.1/generated/pandas。 DataFrame.dropna.html –
这可能是一个解决方案,但它会放弃应该出现在我的数据内的所有'NaN'值,对吧?我的意思是如果我的数据中有一些'NaN'值(如此重要的信息)。 – Hamed