Excelドキュメントから特定の列の特定の値のすべての変数を計算しようとしています。私は列を繰り返して、各インスタンスの合計を計算できるようにしたいと考えています。どのくらいの数の学生がグレード「A」を受けましたか。ここでxlrdを使用してワークシート列から変数を計算する方法は?
は、私がこれまで持っているものです...
Test.xlsを:
名、クラス、学年
ジェームズ、数学、
ジュディ、数学、 A
ビル、社会調査、B
デーニチェ、歴史、C
サラ、歴史、B
ここでは私のPythonスクリプトは、
import xlrd
from collections import Counter
sh = xlrd.open_workbook('test.xls', on_demand = True).sheet_by_index(0) # Open workbook and sheet
for rownum in range(sh.nrows):
grades = str(sh.cell(rownum, 2).value) # Grab all variables in column 2.
print Counter(grades.split('\n')) # Count grades
期待出力されます:
A = 2
B = 2
C = 1
実際の出力:
カウンタ({ 'グレード':1})
カウンタ({ 'A':1})
カウンタ({'A':1})
カウンタ({'B':1})
カウンタ({ 'C':1})
カウンタ({ 'B':1})
各グレードのI /マージすることができなかった別のリストに表示されるようにリストを連結して合計を得る。また、それは望ましい出力書式ではありません。
これはほぼ完璧です、ありがとうございます!また、質問を完了するために、私はこの回答の質問を使用してカウンタをフォーマットすることができました:http://stackoverflow.com/questions/20316299/formatting-output-of-counter#20316330 –