#python #pandas #csv
#python #pandas #csv
Вопрос:
N11682,aircraft,C172,,Cessna,C172SP,airplane,airplane_single_engine_land,fixed_tricycle,Piston,false,false,false,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Flights Table,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Date,AircraftID,From,To,Route,TimeOut,TimeOff,TimeOn,TimeIn,OnDuty,OffDuty,TotalTime,PIC,SIC,Night,Solo,CrossCountry,Distance,DayTakeoffs,DayLandingsFullStop,NightTakeoffs,NightLandingsFullStop,AllLandings,ActualInstrument,SimulatedInstrument,HobbsStart,HobbsEnd,TachStart,TachEnd,Holds,Approach1,Approach2,Approach3,Approach4,Approach5,Approach6,DualGiven,DualReceived,SimulatedFlight,GroundTraining,InstructorName,InstructorComments,Person1,Person2,Person3,Person4,Person5,Person6,FlightReview,Checkride,IPC,PilotComments
2020-11-01,N172TG,KSFM,KSFM,,,,,,,,0.8,0.8,0.0,0.0,0.0,0.0,0.00,0,0,0,0,0,0.0,0.0,0.00,0.00,0.00,0.00,0,,,,,,,0.8,0.0,0.0,0.0,,,,,,,,,false,false,false
2020-11-01,N916BA,KSFM,KSFM,,,,,,,,0.5,0.5,0.0,0.0,0.0,0.0,0.00,0,0,0,0,0,0.0,0.0,0.00,0.00,0.00,0.00,0,,,,,,,0.5,0.0,0.0,0.0,,,,,,,,,false,false,false31,N172TG,KSFM,KSFM,KASH,,,,,,,1.7,1.7,0.0,0.0,0.0,1.7,0.00,0,0,0,0,0,0.0,0.0,0.00,0.00,0.00,0.00,0,,,,,,,1.7,0.0,0.0,0.0,,,,,,,,,false,false,false
Вот мой CSV, хотя я хочу, чтобы он пропускал несколько строк до строки «Таблица полетов», возможно ли это? Я использовал skiprows, но мне нужно немного больше гибкости
Комментарии:
1. каков ожидаемый результат?
Ответ №1:
Я бы:
- Откройте файл CSV
- перебирайте его как итератор
- если строка начинается с вашей волшебной строки, передайте оставшиеся строки в
pandas.read_csv
with open(mycsv, 'r') as fobj:
for line in fobj:
if line.startswith('Flights Table'):
df = pandas.read_csv(fobj)
Ответ №2:
Используйте эту ссылку для подсчета строк вручную и используйте skiprows.
Если строки продолжают меняться — используйте readline, пока не найдете свою строку и не посчитаете строки программно и не передадите в skiprows
skiprows : список, подобный int или вызываемый, необязательные номера строк для пропуска (с индексом 0) или количество строк для пропуска (int) в начале файла.