Time for action – loading from CSV files

How do we deal with CSV files? Luckily, the loadtxt function can conveniently read CSV files, split up the fields, and load the data into NumPy arrays. In the following example, we will load historical price data for Apple (the company, not the fruit). The data is in the CSV format. The first column contains a symbol that identifies the stock. In our case, it is AAPL. Second is the date in the dd-mm-yyyy format. The third column is empty. Then, in order, we have the open, high, low, and close price. Last, but not least, is the volume of the day. This is what a line looks like:

AAPL,28-01-2011, ,344.17,344.4,333.53,336.1,21144800

For now, we are only interested in the close price and volume. In the preceding sample, that would be 336.1 and 21144800. Store the close price and volume in two arrays, as follows:

c,v=np.loadtxt('data.csv', delimiter=',', usecols=(6,7), unpack=True)

As you can see, data is stored in the data.csv file. We have set the delimiter to ',' (comma), since we are dealing with a comma-separated value file. The usecols parameter is set through a tuple to get the seventh and eighth fields, which correspond to the close price and volume. unpack is set to True, which means that data will be unpacked and assigned to the c and v variables that will hold the close price and volume, respectively.

What just happened?

CSV files are a special type of file that we have to deal with frequently. We read a CSV file containing stock quotes with the loadtxt function. We indicated to the loadtxt function that the delimiter of our file was a comma. We specified which columns we were interested in, through the usecols argument, and set the unpack parameter to True so that the data was unpacked for further use.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset