gpt4 book ai didi

python xlwt - 搜索特定值

转载 作者:行者123 更新时间:2023-11-28 16:30:57 26 4
gpt4 key购买 nike

我制作了一个脚本,使用xlrd从多个excel文件的多个单元格中提取多个数据,并使用xlwt将这些数据写入一个新的excel文件。在新的 excel 文件中,我添加了另外两行,其中包含将计算平均值和 ttest 的公式。现在我正在尝试添加一个脚本,该脚本将搜索 ttest 行并将所有小于 0.05 的值都显示为红色。在 stackoverflow 上我找到了一些帮助,但我仍然收到错误消息。 (对于颜色,我使用的是这个来源:https://pypi.python.org/pypi/xlwt)
你能帮帮我吗?
谢谢!

    from xlwt import *
style = xlwt.easyxf('font: colour red, bold on')
wb=xlwt.Workbook()
wbs=wb.add_sheet("sheet_to_write")
w=xlrd.open_workbook("file_to_read.xlsx")
ws=w.sheet_by_name("sheet_to_read")
c=ws.cell(2,6).value
wbs.write(46,1,c)
... #same as the last two lines, extracting different cells from the sheet_to_red and writing them in the sheet_to_write
wbs.write(61,1,Formula("TTEST($B3:$B18, $B19:$B57, 2, 2)"))

旧代码:

    for p in range(61):
p.append(str(sheet.cell(row,col).value))
if p.value < 0.05:
cell.color =='22'

代码 2:

    for row in range(61):
for col in range(wbs.nrows):
cell=ws.cell(row,col)
try:
if float(cell.value) < 0.05:
cell.color =='22'
except ValueError: pass

AttributeError: 'Cell' object has no attribute 'color'

代码 3:

    for row in range(61):
for col in range(wbs.nrows):
search=wbs.cell(row,col)
try:
if float(search.value) < 0.05:
wbs.write(row, col, search.value, style)
except ValueError: pass
ERROR:
AttributeError: 'Worksheet' object has no attribute 'cell',

我的结论:这个方法不行,因为xlwt没有属性cell,也就是nrows,这些属性是xlrd特有的。因此,唯一可行的方法是创建另一个将使用 xlrd 的文件,搜索特定值并将其写入新文件。感谢 Pyrce 和 tmrlvi 的帮助!

最佳答案

当您只需要一个赋值时,您正试图将一个字符串附加到一个整数上。我猜你打算做这样的事情:

# Generate a color style for writing back into xlwt
xlwt.add_palette_colour("my_color", 0x22)
style = xlwt.easyxf('font: colour my_color;')

for row in range(61):
cell = input_sheet.cell(row, col)
try:
if float(cell.value) < 0.05:
output_sheet.write(row, col, cell.value, style)
except ValueError: pass

此外,您还可以看到 xlwt 中的颜色分配与您预期的略有不同。您可能还需要遍历所有单元格并将它们复制到输出工作表,或共享已读取的同一张工作表以使其完全按照您的要求进行。

关于python xlwt - 搜索特定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32017850/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com