本代码目的:
根据弗兰德斯互动分析观察记录表一键获得互动分析矩阵
说明
- 每三秒对课堂中的语音进行一次标注,本贴中设定为40分钟整得课堂数据。
- 共获得40×60÷3=800个数据,填入excel表格中,保存为.xlsx文件
根据该记录表即可开始本贴代码操作:
# -*- coding: utf-8 -*-
"""
本代码用于处理已经编写好的弗兰德斯标注数据(即excel版本的互动数据记录表),
课程标准为40分钟,
只能对xlsx文件进行处理,
且文件中的数据窗格大小为40分钟×60秒,共800个数据
"""
import openpyxl #引入库
import numpy as np
#######第一步,读取xlsx文件中的标注数据
wb=openpyxl.load_workbook("xxx编码.xlsx")
ws=wb.active
lamda=ws['B2:U41']
a=list()
#loop
for x in lamda:
for nm in x:
a.append(nm.value)
#print (len(a))#互动分析记录数据,一长串
########第二步,求数据间的关联,即互动分析矩阵表
m=12#此项为应用改进弗兰德斯标注的指标数目,原始为10
b = np.zeros((m,m))#互动分析矩阵表
for i in range(len(a)-1):
b[a[i]-1][a[i+1]-1]=b[a[i]-1][a[i+1]-1]+1
#print(b)
########第三步,记录互动分析矩阵表,写入excel表格
wb2=bk=openpyxl.Workbook()
sh2=wb2.active
for i in range(len(b)):
for j in range(len(b[i])):
sh2.cell(i+1,j+1).value = b[i][j] # 写入数据
# sh2.cell(i+1,j+1).alignment = Alignment(horizontal='center', vertical='center') # 居中对齐
wb2.save("xxx分析.xlsx")