folder_path = "D:/data_test" dataCol = np.zeros((6, 9)) num_size = 0 for filename in os.listdir(folder_path): num_size +=1 if filename.endswith('.csv'): file_path = os.path.join(folder_path, filename) data = pd.read_csv(file_path) subset = data.iloc[1:7, 1:10] subset = subset.fillna(0) first_row = data.iloc[0, 1:].tolist() first_column = data.iloc[0:, 0].tolist() for i in range(subset.shape[0]): for j in range(subset.shape[1]): value = subset.iloc[i, j] dataCol[i,j] += mass(value,first_row[j],first_column[i],0.25) # 均值 dataCol = dataCol/num_size total_change = np.sum(dataCol) print(dataCol) print(total_change)
时间: 2023-06-19 18:09:10 浏览: 73
这段代码使用了Pandas和Numpy库,实现了读取文件夹中的所有csv文件,将每个文件的第1行和第1列作为每个单元格的权重,计算每个单元格的贡献并将其累加到dataCol数组中。然后,将dataCol数组除以文件数量,得到每个单元格的平均贡献。最后,计算dataCol数组中所有元素的总和,即总贡献。
其中mass()函数用于计算每个单元格的贡献。这个函数的实现方式没有给出,需要根据具体需求进行编写。
阅读全文