Difference between revisions of "LoadingData"

From ECLR
Jump to: navigation, search
Line 13: Line 13:
 
# The <source enclose=none>datevec</source> format: Here a date is transformed into a (1 x 6) vector where the first element represents the year, the second the month, the third the day, the fourth the hour, the fith the minutes and the sixth the seconds. If you only enter a day, the last three entries will take the value 0.
 
# The <source enclose=none>datevec</source> format: Here a date is transformed into a (1 x 6) vector where the first element represents the year, the second the month, the third the day, the fourth the hour, the fith the minutes and the sixth the seconds. If you only enter a day, the last three entries will take the value 0.
  
It is a great feature of MATLAB that it recognises a good number of different date formats and translates them easily into one of the two MATLAB formats. Importantly, if you open an EXCEL file (see below) and your spreadsheet contains dates formatted as EXCEL dates, MATLAB will automatically translate these dates into the <source enclose=none>datenum</source> format.
+
It is a great feature of MATLAB that it recognises a good number of different date formats and translates them easily into one of the two MATLAB formats. Importantly, if you open an EXCEL file (see below) and your spreadsheet contains dates formatted as EXCEL dates, MATLAB will automatically translate these dates into the <source enclose=none>datenum</source> format if you are using a MATLAB version R2012a or higher.
  
 
= Data Sources =
 
= Data Sources =
Line 19: Line 19:
 
By far the easiest formats to import data into MATLAB are Excel spreadsheets and csv files. But it should be said here that data import is one of the areas where things change from one MATLAB version to the next.
 
By far the easiest formats to import data into MATLAB are Excel spreadsheets and csv files. But it should be said here that data import is one of the areas where things change from one MATLAB version to the next.
  
When dealing with xls/xlsx and csv files you can double click on the file you want to import in the
+
When dealing with xls/xlsx and csv files you can double click on the file you want to import in the "Current Directory" window.
double click on
+
 
 +
== MATLAB R2011 and lower ==
 +
 
 +
A window will then open and give you a preview of the data MATLAB will import. Generally MATLAB will generate the data in two matrices, one for the columns that MATLAB recognised as numerical data (often called <source enclose=none>data</source>) and another that contains all non-numerical spreadsheet entries ( often called <source enclose=none>textdata</source>).
  
 
if text data then use command line:  
 
if text data then use command line:  
 
     [NUM,TXT,RAW]=xlsread(FILE,SHEET) as that will save the textdata in TXT and RAW
 
     [NUM,TXT,RAW]=xlsread(FILE,SHEET) as that will save the textdata in TXT and RAW
 +
 +
== MATLAB R2012 and higher

Revision as of 20:53, 22 September 2012

Introduction

Usually you will have data saved in some file, like Excel files, csv (comma seperated values) file or a text file. These are the most common formats in which you can download data from various databases.

Before we can look at the data upload procedure it is important to have a very quick look at the way in which MATLAB deals with dates.

Dealing with date vectors

When dealing with time series data you will often want to keep date information. MATLAB has excellent date functionality and dealing with data is indeed one of its strengths. There are two principle formats in which MATLAB handles dates, the datenum and the datevec format

  1. The datenum format: Here MATLAB records date information in terms of the number of days since 01 Jan 0000. This day is given the number 1. The next day (2 Jan 0000) is assigned the number 2 and so forth. The 22 Sept 2012 is 735134. If you have time information included into your dates, that will be reflected in fractions. For example, '22-Sept-2012 12:00:00' is represented by 735134.5, as it is half way through the day.
  1. The datevec format: Here a date is transformed into a (1 x 6) vector where the first element represents the year, the second the month, the third the day, the fourth the hour, the fith the minutes and the sixth the seconds. If you only enter a day, the last three entries will take the value 0.

It is a great feature of MATLAB that it recognises a good number of different date formats and translates them easily into one of the two MATLAB formats. Importantly, if you open an EXCEL file (see below) and your spreadsheet contains dates formatted as EXCEL dates, MATLAB will automatically translate these dates into the datenum format if you are using a MATLAB version R2012a or higher.

Data Sources

By far the easiest formats to import data into MATLAB are Excel spreadsheets and csv files. But it should be said here that data import is one of the areas where things change from one MATLAB version to the next.

When dealing with xls/xlsx and csv files you can double click on the file you want to import in the "Current Directory" window.

MATLAB R2011 and lower

A window will then open and give you a preview of the data MATLAB will import. Generally MATLAB will generate the data in two matrices, one for the columns that MATLAB recognised as numerical data (often called data) and another that contains all non-numerical spreadsheet entries ( often called textdata).

if text data then use command line:

   [NUM,TXT,RAW]=xlsread(FILE,SHEET) as that will save the textdata in TXT and RAW

== MATLAB R2012 and higher