help-excel统计某几列之和/以行为单位 并存入列表
import xlrd import numpy as np import matplotlib.pyplot as plt import pandas as pd ''' # 设定行名称,第11行为字段名称 data = pd.read_excel("D:/01研/研二/20220115/不同学科论文引用数据/数据/linguistic/Russian 1.xls", header=10) ''' # 多个表,合并一下 data0 = pd.read_excel("D:/01研/研二/20220115/不同学科论文引用数据/数据/linguistic/English 2008 1.xls", header=10) data1 = pd.read_excel("D:/01研/研二/20220115/不同学科论文引用数据/数据/linguistic/English 2008 1001.xls", header=10) data2 = pd.read_excel("D:/01研/研二/20220115/不同学科论文引用数据/数据/linguistic/English 2008 2001.xls", header=10) data3 = pd.read_excel("D:/01研/研二/20220115/不同学科论文引用数据/数据/linguistic/English 2008 3001.xls", header=10) data4 = pd.read_excel("D:/01研/研二/20220115/不同学科论文引用数据/数据/linguistic/English 2008 4001.xls", header=10) data5 = pd.read_excel("D:/01研/研二/20220115/不同学科论文引用数据/数据/linguistic/English 2008 5001.xls", header=10) data6 = pd.read_excel("D:/01研/研二/20220115/不同学科论文引用数据/数据/linguistic/English 2008 6001.xls", header=10) data7 = pd.read_excel("D:/01研/研二/20220115/不同学科论文引用数据/数据/linguistic/English 2008 7001.xls", header=10) data8 = pd.read_excel("D:/01研/研二/20220115/不同学科论文引用数据/数据/linguistic/English 2008 8001.xls", header=10) data = data0.append(data1.append(data2.append(data3.append(data4.append(data5.append(data6.append(data7.append(data8)))))))) #data = data0.append(data1.append(data2.append(data3.append(data4.append(data5.append(data6.append(data7))))))) #data = data0.append(data1.append(data2.append(data3.append(data4.append(data5.append(data6)))))) #data = data0.append(data1.append(data2.append(data3.append(data4.append(data5))))) #data = data0.append(data1.append(data2.append(data3.append(data4)))) #data = data0.append(data1.append(data2.append(data3))) #data = data0.append(data1.append(data2)) #data = data0.append(data1) print(len(data)) # 输出前五年被引频次之和不为零的年份,及其对应的被引频次数值 names = locals() sum5 = [] a = []
# 1990-2009 for i in range(0,19): names['sum5_' + str(1990+i) ] = np.array(data[data["Publication Year"]==1990+i].iloc[0:,111+i:111+i+5].sum(axis=1)).tolist() sum5.append(names.get('sum5_' + str(1990+i))) # 求五年被引频次之和 for j in range(len(names.get('sum5_' + str(1990+i)))): if names.get('sum5_' + str(1990+i))[j] != 0: print('sum5_' + str(1990+i), names.get('sum5_' + str(1990+i))[j]) # 五年被引频次之和不为0 a.append(names.get('sum5_' + str(1990+i))[j]) print(len(a))