We are going to use a LIBRARY called nump
numpy not nump
In [2]:
    
import numpy
    
In [3]:
    
numpy.loadtxt(fname='data/weather-0.1.csv',delimiter=',')
    
    
In [3]:
    
numpu.loadtxt(='data/weather-01.csv', delimiter = ',')
    
    
In [4]:
    
numpy.loadtxt(fname='Data/weather-01.csv', delimiter=',')
    
    Out[4]:
Variables
In [8]:
    
weight_kg =55
    
In [9]:
    
print (weight_kg)
    
    
In [10]:
    
print('weight in pounds:', weight_kg * 2.2)
    
    
In [11]:
    
weight_kg = 57.5
    
In [13]:
    
print ('New weight:', weight_kg * 2.2)
    
    
In [14]:
    
%whos
    
    
In [6]:
    
data=numpy.loadtxt(fname='Data/weather-01.csv', delimiter=',')
    
In [16]:
    
print (data)
    
    
In [17]:
    
print (type(data))
    
    
In [18]:
    
%whos
    
    
In [19]:
    
# Finding out the data tye
print (data.dtype)
    
    
In [20]:
    
# Find out the shape
print (data.shape)
    
    
In [21]:
    
# This is 60 rows by 40 columns
    
In [22]:
    
# Gtting a single number out of the array
print ("First value in data:", data [0,0])
    
    
In [26]:
    
# First element is 0 as we are counting the number of positions from the start, ie. the first is 0 from the start and 
# the last is n-1
    
In [27]:
    
print ('A middle value:', data[30,20])
    
    
In [28]:
    
#just named a new variable 'A middle value' and said that that variable is data from the 'data' array
    
In [30]:
    
#First 10 columns for the first 4 rows, taking a section of the array a slice
    
In [31]:
    
print (data[0:4,0:10])
#start at index 0 and go upto but not including 4, then do columns starting at 0 but not including 10,
#you end up with 4 rows 10 columns
    
    
In [32]:
    
# don't have to start a slice at 0
print (data[5:10, 7:15])
    
    
In [33]:
    
#Number of columns/rows = larger number minus smaller number
    
In [34]:
    
# we don't even need to include the upper or lower bounds, assumes first column/row or last column/row depending on which
#you miss out
smallchunk = data [:3, 36:]
print (smallchunk)
#starting at 0 going to column 3 and starting at row 36 going to the end
    
    
In [35]:
    
#aithmetic on arrays
doublessmallchunk = smallchunk * 2.0
# times everything in small chnk by 2.0
    
In [36]:
    
print (doublessmallchunk)
#tab auto completes things
    
    
In [38]:
    
triplesmallchunk = smallchunk + doublessmallchunk
# adding variables, same shape but with different values, same as timesing smallchunk by 3
    
In [39]:
    
print (triplesmallchunk)
    
    
In [40]:
    
print (numpy.mean(data))
    
    
In [41]:
    
#print just tells you what a thing is it doens't create it as a new variable
    
In [42]:
    
print (numpy.max(data))
    
    
In [43]:
    
print (numpy.min(data))
    
    
In [44]:
    
# get a set of data for the first weather station
station_0 = data [0, :]
# getting first row for all columns
    
In [45]:
    
print (station_0)
    
    
In [46]:
    
print (numpy.max(station_0))
    
    
In [47]:
    
# we don't need to create 'temporary' array slices
# we can refer to what we call array axes
    
In [48]:
    
# e.g.
print (numpy.mean(data, axis = 0))
#
    
    
In [49]:
    
print (numpy.mean(data, axis = 1))
    
    
In [51]:
    
# axes are dimensions so axes=0 are the columns and the mean of axes=0 gives you the mean of each column, mean t for each time
# axis=1 are the rows so mean of axis=1 is the mean of each row- mean T of each station
    
In [52]:
    
# Visualisations
# matplotlib gives you matlab like plotting functions
    
In [9]:
    
import matplotlib.pyplot
# matplotlib is massive so just import small parts
    
In [10]:
    
%matplotlib inline
# plots appear in same window
    
In [55]:
    
image = matplotlib.pyplot.imshow(data)
    
    
In [57]:
    
# heat map. Don't know what it represents tho
    
In [58]:
    
#look at average T over time
avg_Temp = numpy.mean(data, axis=0)
    
In [59]:
    
avg_plot = matplotlib.pyplot.plot(avg_Temp)
    
    
In [7]:
    
min_Temp = numpy.min(data, axis=0)
    
In [13]:
    
max_Temp = numpy.max(data, axis=0)
    
In [11]:
    
min_plot = matplotlib.pyplot.plot(min_Temp)
    
    
In [14]:
    
max_plot = matplotlib.pyplot.plot(max_Temp)
    
    
In [15]:
    
max_plot = matplotlib.pyplot.plot(max_Temp)
min_plot = matplotlib.pyplot.plot(min_Temp)
#plots on one graph
    
    
In [ ]: