0

27列のExcelファイルがあります。列ごとに読み取り、最後の 5 つの値を列に格納する Python コードを書きたいと思います。これにより、数式が実行されます。

私はこれまでのところこれを持っています:

from math import tan

#Write Header
#outFile.write('Test Name,X+ avg,X+ std,X+ count,X- avg,X- std,X- count,X angle,Y+ avg,Y+ std,Y+ count,Y- avg,Y- std,Y- count,Y angle\n')

#for line in inFile:


if 1==1:

    line = [1,2,38.702,37.867,35.821, 44, 49,55,65,20,25,28,89.]

    line0= len(line)
    print "the list size"
    print line0

    line1 = len(line) -5  #takes the overall line and subtracts 5. 
    print "the is the start of the 5 #'s we need"
    print line1 #prints the line

    d= line[line1:line0]       #pops all the values from in the line (..)
    print "these are the 5 #'s we need"
    print d

    lo=min(d)
    hi=max(d)


    print "the lowest value is"
    print lo


    print "the highest value is"
    print hi

    average1 = float (sum(d))/ len(d)   #sum
    print "the average of the values is"
    print average1

「行 = [1,2,38.702,37.867,35.821, 44, 49,55,65,20,25,28,89.]」の部分は、Python に列を自動的に読み取り、最後の 5 つの値を保存し、上記の数学分析を行います。

4

2 に答える 2

1

おそらくopenpyxlのようなライブラリを使用したいと思うでしょう。これは、特定のセルにアクセスする方法に関するドキュメントの例です。

columnOffset = 2 # column offset is (the letter as a number - 1), a = (1-1), b = (2-1)
rowOffset = 35 # row offset is row number - 1

wb = load_workbook('test.xlsx')
ws = wb.get_active_sheet()
for column in ws.columns[columnOffset:27]: #because you have 27 columns to parse through
    for rowIndex, cell in enumerate(column[-5:]):
        if rowIndex >= rowOffset:
            print cell.value

残念ながら、openpyxl は列を適切にサポートしていないため、列を取得するにはインデックスを使用する必要があります。

xlrdに基づく

import xlrd

wb = xlrd.open_workbook("C:\Users\Asus\Desktop\herp.xls")
sh = wb.sheet_by_name(u'A Snazzy Title')

for index in xrange(2, 4):
    lastFive = sh.col_values(index, start_rowx=59, end_rowx=64)
    print lastFive

xlrd はスプレッドシート全体を 2D リストのように扱うように見えるので、インデックスを 0 から開始することを忘れないでください。はい、xlrd は完全に Python に基づいています。

このモジュールを指摘してくれたalexisに感謝します。

于 2012-10-26T22:21:20.490 に答える
0

参考までに、python-excelプロジェクト(http://www.python-excel.org/xlrd )からの/もあります。ただし、ダウンロードする必要もあります。私はopenpyxlを使ったことがないので、どちらが優れているかはわかりません。xlwt

于 2012-10-26T23:06:33.700 に答える