1、导入包
import numpy as np
import pandas as pd
import os
import csv
successDataPath = "C:/Users/S/Desktop/不同数据集U_RATIO(BP)/csv/"
csvColumn = ['LOT','WAFER','END_TIME','AD0100_RATIO','PROCESS','STEP','EFFECT','REASON']
for root,dirs,files in os.walk(successDataPath): #遍历文件夹和文件名
#print(files)
for i in files:
step = i.split('.')[0] #split('.')以"."作为分隔符,split('.')[0]表示取第一个
file=os.path.join(root,i) #os.path.join(root,i) :表示把root路径和i路径联立一起
csv=pd.read_csv(file,encoding='utf8') #pd.read_csv("csv文件路径"):表示读取csv文件
diff = list(set(csv.columns) - set(csvColumn))[0]
csvAll = csv.loc[:,['LOT','WAFER','AD0100_RATIO']] #loc是根据索引来取对应的行,iloc是根据行号开始,从0开始依次加一
newColumn = csv.loc[:,[diff]].drop_duplicates().values.tolist() #drop_duplicates()去除列的重复项
#tolist()作用:将矩阵(matrix)和数组(array)转化为列表。
for i in newColumn:
csvAll[step+"_"+str(i[0])] = 0
for index,column in csv.iterrows(): #for index,column in csv.iterrows():对DataFrame函数进行遍历
csvAll.loc[index,step+'_'+ str(column[diff])]=1
#print(csvAll)
知识点:
for root,dirs,files in os.walk(successDataPath): #遍历文件夹和文件名
#split('.')以"."作为分隔符,split('.')[0]表示取第一个
#os.path.join(root,i) :表示把root路径和i路径联立一起
#pd.read_csv("csv文件路径"):表示读取csv文件
csvAll = csv.loc[:,['LOT','WAFER','AD0100_RATIO']] #loc是根据索引来取对应的行,iloc是根据行号开始,从0开始依次加一
newColumn = csv.loc[:,[diff]].drop_duplicates().values.tolist() #drop_duplicates()去除列的重复项
#tolist()作用:将矩阵(matrix)和数组(array)转化为列表。
#for index,column in csv.iterrows():对DataFrame函数进行遍历