对文件夹下的子csv文件中的数据进行滤波,滤波后保存为一个CSV文件

"""
Created on Thu Jul 18 11:45:26 2019
每读取一个CSV文件进行拉伊达法则,然后保存在一个文件中
@author: 1701
"""
import pandas as pd
import numpy as np
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
import os

path = "C:/Users/1701/Desktop/文件1"           # 设置路径
dirs = os.listdir(path)  
                # 获取指定路径下的文件
t=0        
h = [[] for q in range(30)] #循环在一个列表中创建30个子列表
for i in dirs:
                              # 循环读取路径下的文件并筛选输出
    if os.path.splitext(i)[1] == ".csv":   # 筛选csv文件
        print (i)        
        im_data=pd.read_csv('C:\\Users\\1701\Desktop\\文件1\\'+i)#读取对应的文件内容
        im1=im_data.values.tolist()
        im=np.array(im_data['3'])
        std = np.std(im)
        mean = np.mean(im)
        b = 1
        lower_limit = mean-b*std
        upper_limit = mean+b*std
        
        for r in range(len(im1)):
            row = im1[r] 
            if row[4]>=lower_limit and row[4] <= upper_limit:
              h[t].append(row)
              
        t+=1
         
             
h1=pd.DataFrame(h)
h1.to_csv('C:\\Users\\1701\\Desktop\\sws.csv')

你可能感兴趣的:(数据挖掘,python)