【发布时间】:2021-07-28 03:55:06
【问题描述】:
我认为这将是一项非常简单的任务,但事实证明它比我想象的要复杂得多。尝试读取带有值表的简单 Excel 电子表格,然后对值执行计算并输出新工作表。
第一个问题是,人们推荐使用什么库?熊猫?打开pyxl?目前使用 openpyxl 并努力获取单个单元格的值。这是一些代码:
collectionOrder = np.empty( [numRows,2], dtype='object')
numCountries = 0
for i in burndownData.iter_rows():
elemnt = burndownData.cell(row=i,column=1)
print("elemnt=",elemnt.value )
if not( np.isnan(burndownData.cell(row=i,column=1).value)):
collectionOrder[ int(burndownData.cell(row=i,column=1).value) ][0] = burndownData.cell(row=i,column=1).value
collectionOrder[ int(burndownData.cell(row=i,column=1).value) ][1] = i
numCountries = numCountries + 1
但当我第一次尝试使用单元格引用 (burndownData.cell(row=i,column=1)) 时,我收到以下错误:
Exception has occurred: TypeError '<' not supported between instances of 'tuple' and 'int'
File "C:\Users\cpeddie\Documents\projects\generateBurndownReport.py", line 59, in run elemnt =
burndownData.cell(row=i,column=1) File
"C:\Users\cpeddie\Documents\projects\generateBurndownReport.py", line 96, in <module>
run()
我在网上看到的所有内容都表明这是获取单个单元格值的方法。我究竟做错了什么?有没有更简单的方法?
谢谢....
【问题讨论】:
-
你为什么同时使用 .iter_rows() 和 .cell()?
标签: python excel pandas openpyxl