2016-03-27 280 views
1

我正在尝试读取由我在覆盆子pi上写入的一些代码生成的CSV文件。目前,随着警告或数据的在所述第一线的几行,然后将覆盆子PI输出数据输出的数据流中作为像这样的数值:Python:从CSV中删除非数字数据

MMA init error = -82   
MMA init error = 0  
MMA init pass ID = 26  
MMA Sensor Connected 4744 56100 
65232 4744 56100 
65232 4744 56100 
65232 4744 56100 
65232 4744 56100 

我想办法能够通过此解析并删除所有包含错误和信息的行,以便在对数字数据运行分析时,不会包含其他数据。有没有办法做到这一点,类似于在MATLAB中,你可以简单地写filename.data

+0

你可以使用正则表达式来只找到匹配'^ [\ d \ S] + $'这行。 –

回答

0
# coding: utf-8 

data =[] 
with open(filename) as f: 
    for line in f.readlines(): 
     fields = line.split('\t') 
     if fields[0].isdigit(): 
      data.append(fields) 

或使用熊猫

from pandas import read_table 
# if you know first row data shows up in 
data = read_table(filename, header=firstrowdata)