[TOC]
数组
python定义二维数组时不能用 [ [ 0 ]* m]* m 创建,可以采用:
smat = np.zeros((m, m))
或者:
arr = [[0 for i in range(n)] for j in range(m)]
读文件
如果不想让第一行为index的话,在读文件是加一个header=None
s = pd.read_csv('../data/seq.csv',header=None)
批量读文件夹下的文件
import os
import io
path = 'D:/mat'
path2 = 'D:/seq'
flie_dir = os.listdir(path)
for file in flie_dir:
if not os.path.isdir(file):
flie_name = os.path.join(path , file)
print(flie_name)
data = io.imread(flie_name)
io.imsave(os.path.join(path2 , file), data)
else:
print('can not!!!')
读excel的某个sheet
df = pd.read_excel(r'附件3.xlsx', sheet_name='学生评教表1')
读txt按空格分开
g = pd.read_csv(path1, delim_whitespace=True, header=None) # ReadMat
分组求平均,两个指标
import pandas as pd
# 读入数据
df = pd.read_excel(r'附件3.xlsx', sheet_name='学生评教表2(整体印象分)')
#分组求平均
x3 = df.groupby([df['教师姓名'],df['指标名称']])['评价分'].mean().reset_index()
# 导出数据
x3.to_excel('平均分2.xlsx')