2016-04-08 4 views
1

Скажем, у меня есть файл csv, который выглядит следующим образом: первый столбец содержит частоты, а второй столбец содержит уровень мощности (дБм).чтение в некоторых строках из файла csv с использованием python

Frequency | dBm 

1   -11.43 
2.3   -51.32 
2.5   -12.11 
2.8   -11.21 
3.1   -73.22 
3.2   -21.13 

Я только хочу читать в наборах данных этого файла, которые имеют (дБм) значение от -13 до -10. Поэтому в этом примере я хочу, чтобы наборы данных (1, -11.43) (2.5, -12.11) (2.8, -11.21) считывались в мои программные переменные x1 и y1. Может ли кто-нибудь дать мне некоторую помощь в том, как я мог это сделать?

ответ

0

Вы можете просто использовать библиотеку csv и проверить, соответствуют ли они вашим критериям.

Что-то, как это должно работать на вашем файле:

with open('file.csv') as csvfile: 
     reader = csv.reader(csvfile,delimiter=' ') 
     reader.next() 
     reader.next() 
     for row in reader: 
       a = [float(i) for i in row if i!=''] 
     if a[1]>=-13 and a[1]<=-1: 
      print (a[0],a[1]) 

Edit: Если вы работаете с данными таблицы, я хотел бы предложить попробовать Pandas, это очень полезно в таких ситуациях.

+0

спасибо за это! Тем не менее, я надеялся, что я смогу добиться этого. – SCY

+0

сделал пример, который работает на вашем примере файла, возможно, вам придется настроить его для ваших реальных данных. –

+0

эй спасибо! это очень поможет мне. – SCY

Смежные вопросы