import xlrd
def count_frequency(file_path, sheet_name, field):
wb = xlrd.open_workbook(file_path)
sheet = wb.sheet_by_name(sheet_name)
head_line = sheet.row_values(0)
for j in range(len(head_line)):
if head_line[j] == field:
target_col = sheet.col_values(j)
break
frequency = {}
for i in range(1, sheet.nrows):
words = target_col[i].split(' ')
for k in range(len(words)):
if words[k] in frequency.keys():
frequency[words[k]] = frequency[words[k]] + 1
else:
frequency[words[k]] = 1
ordered_frequency = sorted(frequency.items(), key=lambda x:x[1], reverse=True)
for i in range(len(ordered_frequency)):
print(ordered_frequency[i])
if __name__ == '__main__':
file_path = 'D:\\111用户共享\\智能诊断数据集.xlsx'
count_frequency(file_path, '智能诊断数据集', 'symptom')