Data Analyst
1372 Order Completed 95 % Response Time 62 Reviews Since 2015

Data Analyst

Leeds, UK

Boniface P

Master’s Degree, Data Science, The University of Edinburg


Experienced Matlab assignment helper with 5 years of experience in data analysis


I am a highly experienced data analyst and I have been offering assignment assistance in various fields of data analysis to help students who are stuck with projects on this topic. I help in the completion of assignments effectively and on time. I have experience in database development, data visualization, data mining, data representation, and more. I perform these techniques using Matlab, which makes me a great fit for anyone looking for expert help with data analysis using Matlab. I would be glad to discuss your project with you and provide the best solution.

Get Free Quote

 Your Order has been sent successfully. We will contact you as soon as possible.
Error: Please try again
0 Files Selected

Data Manipulation

Data Analysis

Published : 23-02-2018

In this assignment, you are required to find some data from online resources and import it into Matlab. Explain your data briefly including the columns you are interested in. If the data contains too many columns, identify and list the columns you will be working on. Use Matlab to clean and organize your data. Next, try to comprehend your data for example, by measuring the variance, max, mean, etc. of the columns you are interested in or by plotting histograms, pie charts, 2-d plots, etc. Explain these plots and your findings. Finally, find the relationship between the different columns you are interested in and perform any other analysis you find helpful in manipulating and understanding your data.

Solving Differential Equation
clear all, close all, clc % parameters for the lorenz model s = 10.; b = 8/3; r = 28.; %s=input('Press 1 to change initial conditon and 2 to change stepsize') % numerical parameters % Chaniging the step size by adding 0.0000001 dt = 1e-2+0.0000001; % time step tend = 20; % time interval length tdim = tend/dt; % number of time steps to compute % initial values 'Changing initial conditons' % You can note the figures of x,y, z, as well as % The 3D figure, you will see that a small change will lead to % More starting points before comoing to equiliruim points % You can use your own explanation which could be better then mine % Based on your course of cours % The intial values are: x0=-7.3196, y0=0.9739, z0=32.595 xyz(1,1)=-7.3196; % x start value xyz(1,2)= 0.9739; % y start value xyz(1,3)= 32.595; % z start value % main loop integration of differential eq. for it=2:tdim xyz(it,1) = xyz(it-1,1) +dt*(-s*xyz(it-1,1)+s*xyz(it-1,2)); xyz(it,2) = xyz(it-1,2) +dt*(-xyz(it-1,1)*xyz(it-1,3)+r*xyz(it-1,1)-xyz(it-1,2)); xyz(it,3) = xyz(it-1,3) +dt*(xyz(it-1,1)*xyz(it-1,2)-b*xyz(it-1,3)); end time=(1:tdim)*dt; % example plot of time series the variable X figure(), plot(time, xyz(:,1)) title('time series of X') xlabel('time [non-dimensional]') ylabel('X [non-dimensional]') figure(), plot(time, xyz(:,2)) title('time series of Y') xlabel('time [non-dimensional]') ylabel('Y [non-dimensional]') figure(), plot(time, xyz(:,3)) title('time series of Z') xlabel('time [non-dimensional]') ylabel('Z [non-dimensional]') figure(), plot3(xyz(:,1),xyz(:,2),xyz(:,3)); grid on % The time at the equilirbuim points are: [px,rx]=find(xyz(:,1)
Numerical Computing
function ButtonPushed_TASK1(btn, flag, LocationID, Days, Ice, DayID) % global DayID if flag == 1 DayID = find(Days == str2double(btn.Text)); % Show dialog with LocationID Nl = length(LocationID); fig = uifigure('Name', 'Select Day', 'Position', [50, 100, 200, 200]); for i = 1:Nl uibutton(fig, 'Text', LocationID(i), 'Position', [50, (Nl-i+1)*30, 100, 22], 'ButtonPushedFcn', @(btn, event) ButtonPushed_TASK1(btn, 2, LocationID, Days, Ice, DayID)); end else % get index location_id = find(LocationID == btn.Text); ice = Ice(DayID, location_id); fprintf("On day %s, at location %s, the ice thickness wass %s [m]\n", num2str(DayID), LocationID(location_id), num2str(ice)); uiresume end end function ButtonPushed_TASK5(btn, LocationID, Days, Ice) % get index location_idx = find(LocationID == btn.Text); figure plot(Days, Ice(:, location_idx), 'ro'); xlabel('Time [days]'); ylabel('Ice Thickness [m]'); title(strcat(['Ice Thickness at Location ', btn.Text, ' over time'])); grid on end function [out1, out2, out3, out4, out5] = DataStats(Days, LocationID, Ice) % Get number of measurements out1 = size(Ice,1)*size(Ice,2); % number of rows*cols % Overall average measurement out2 = mean(mean(Ice)); % Maximum overall all measurement and its location [out3, out4] = max(Ice(:)); % Day at which max value was found out5 = -1; k = 1; for i = 1:size(Ice,1) for j = 1:size(Ice,2) if k == out4 out5 = Days(i); out4 = LocationID(j); return; end k = k + 1; end end end clc, clear all, close all load MA2_data.mat %% Task 1 fig = uifigure('Name', 'Select Day', 'Position', [50, 100, 200, 550]); Nb = length(Days); for i = 1:Nb uibutton(fig, 'Text', num2str(Days(i)), 'Position', [50, (Nb-i+1)*30, 100, 22], 'ButtonPushedFcn', @(btn, event) ButtonPushed_TASK1(btn, 1, LocationID, Days, Ice, 0)); end uiwait %% Task 2 fprintf("\n"); new_day = max(Days)+3; % 3 days after the last record thickness_vec = input("Enter ice thickness data at all locations, 3 days after the last recorded day (as a vector): "); new_locid = input("Enter the location ID for the newly discovered location: ", 's'); new_ice = input("Enter the ice thickness on the new day, at the new location: "); % update data LocationID = [LocationID, new_locid]; % update LocationID Days = [Days;new_day]; % update the Days data % Append the new data for current locations Ice = [Ice;thickness_vec]; % Now, append a new column for the new location. For previous day, the data % will be zero since there was no record for that location Ice(:,end+1) = zeros(size(Ice,1), 1); % Now, append new data for new location Ice(end, end) = new_ice; save("MA2_Task2.mat", 'Days', 'LocationID', 'Ice'); fprintf("\n"); fprintf("Days, LocationID and Ice have been updated. See 'MA2_Task2.mat'\n"); % Task 3 [N, Avg, Max, LocMax, DayMax] = DataStats(Days, LocationID, Ice); fprintf("\n"); fprintf("A total of %s measurements have been taken.\n", num2str(N)); fprintf("The overall average ice thickness is %.3f [m].\n", Avg); fprintf("The maximum overall ice thickness is %.3f [m], which ocurrs on Day %s at Location %s.\n", Max, DayMax, LocMax); % Task 4 fprintf("\n"); perc = input("Enter the projected percent reduction rate (0-100%): "); IceNew = Projection(perc, Ice); % Save to Excel csvwrite("MA2_Task5.csv", IceNew); fprintf("Projected ice thicknesses calculated. See MA2_Task4.csv.\n"); %% Task 5 fig = uifigure('Name', 'Select Location', 'Position', [50, 100, 200, 250]); Nl = length(LocationID); for i = 1:Nl uibutton(fig, 'Text', LocationID(i), 'Position', [50, (Nl-i+1)*30, 100, 22], 'ButtonPushedFcn', @(btn, event) ButtonPushed_TASK5(btn, LocationID, Days, Ice)); end function out1 = Projection(in1, in2) % get final row row = in2(end,:); % Reduce row = row.*(1-in1/100); % Append value to the data out1 = in2; out1 = [out1;row]; end