Selecting specific columns to import from a CSV

The data I import from my GPS is formatted as CSV files with the following headers:
ID, Session_ID, Heading, Altitude, Latitude, Longitude, Created_DateTime
I only need the Latitude and Longitude values in columns 5 and 6. Is there any way of achieving this?
Currently I delete the last column manually in excel (Created_DateTime) and then use:
data = csvread('gps.csv',1,4);
This returns my latitude/longitude data but I'm wondering if there is a way of doing this without having to manually delete the Created_DateTime column in excel?

 Accepted Answer

fmt=[repmat('%*f',1,4) repmat('%f',1,2) '%*[^\n]'];
fid=fopen('gps.csv');
data=cell2mat(textscan(fid,fmt,'collectoutput',1));
fid=fclose(fid);
See
doc textscan % for details...

3 Comments

Just tried this and 'data' was empty. I'm not familiar with this method so I could tinker with it.
May need
'delimiter',','
for the CSV file
Actually just found a "Generate Script for Selection" under an Import button, thanks for your help though!

Sign in to comment.

More Answers (1)

hi need to select a specific colomns and rows copy one to another csv file how

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!