Fitting A Theory Curve To Your Data
One of the key operations you will do with data is to perform fits.   You can read more about fitting in your textbook.   To make Mathematica do fits properly, I will show you some of the data-manipulations you may need.   First, "SimpleFitter" is a tool somewhat like "SimplePlotter".

SimpleFitter[thisNamesForDataColumns_,thisData_] := 
Manipulate[
choicex = Position[thisNamesForDataColumns,choicexname][[1]][[1]];
choicey = Position[thisNamesForDataColumns,choiceyname][[1]][[1]];
(* we then put that into a new array using the "Table" command *)
choicecut = Flatten[Position[thisNamesForDataColumns,choicecutname]][[1]];

(* I take the user's cut-variable, if any, and apply it, throwing away data where the cut variable is outside the range *)
If[UseCut,
SelectedData = Select[thisData,#[[choicecut]] > cutmin && #[[choicecut]] < cutmax &],
SelectedData = thisData
]
;
plotdata = Table[{SelectedData[[i]][[choicex]],SelectedData[[i]][[choicey]]},{i,1,Length[SelectedData]}];

myFit = NonlinearModelFit[plotdata,ToExpression[userEquation],ToExpression[userVariables],x];
GraphicsGrid[{{ Show[
Plot[myFit["BestFit"],{x,0,0.1}],
ListPlot[plotdata,PlotMarkers->{Automatic,Medium}]
]},{Text[myFit["ParameterTable"]]}}
],
{{choicexname,thisNamesForDataColumns[[1]],"x-axis"},thisNamesForDataColumns},
{{choiceyname,thisNamesForDataColumns[[2]],"y-axis"},thisNamesForDataColumns},
{{userEquation,"a*x + b","fit to y="}},
{{userVariables,"{a,b}","with parameters "}},
{{UseCut,False,"Restrict the data?"},{False,True}},
{{choicecutname,thisNamesForDataColumns[[1]],"restricted variable"},thisNamesForDataColumns},
{{cutmin,5,"from min= "},-10000,10000},
{{cutmax,10000,"to max="},-10000,10000},


ControlType->{PopupMenu,PopupMenu,InputField,InputField,Checkbox,PopupMenu,InputField,InputField}
]

NamesOfDataElements = {"time", "voltage", "current", "comments"}

DataInMatrixForm = {  
{10.02, 0.5, 0.00495, 0}, 
        {10.03, 1., 0.01013, 0},
{10.04, 2., 0.0201, 0},
 {10.05, 2.5, 0., "ammeter jumping around"}, 
 {10.1, 2.5, 0.0251, "better this time"}, 
 {10.11, 5, 0.0498, 0}, 
       {10.12, 10, 0.0996, 0},
{10.13, 10, 0.101, 0}    }

SimpleFitter[NamesOfDataElements,DataInMatrixForm]

Some more manipulation of this data

You will need to be able to manipulate fits yourself later.   Here is an example of manipulating the data into the form useful for ListPlot, Fit, and NonLinearFit.   

First, all of these routines want a list of data points---each data point being an {x,y} pair, uncluttered by comments, other variables, etc.   We can build such lists using the "Table" command.   Type this:
     DataToFit =Table[ { DataInMatrixForm[[i,3]] , DataInMatrixForm[[i,2]] }  , { i,1,8} ]
The first argument of "Table" is an {x,y} pair --- or at least it would be if i were replaced with 1, or 2, or whatever.  The Table[] command will make a loop, over the range of i that you tell it to (that's the second argument) and build a list of what it finds.
    Mathematica has a very simple Fit[] command for polynomials or other linear functions.  Try this, to fit a parabola:
   fitresult =   Fit[DataToFit,{1,x,x^2},x]
   Plot[fitresult,{x,0,0.1}]
   
   Show[ Plot[fitresult,{x,0,0.1}] , ListPlot[DataToFit] ] 
   
A much more powerful fitter---the one embedded in SimpleFitter---can be accessed with NonlinearModelFit.   This is important, in particular, because it will report error bars properly.   Try:
   nlm = NonlinearModelFit[ DataToFit, a*x^2 + b*x + c, {a,b,c},x ]
   nlm["ParameterTable"]
   
   You may also have to learn to put error bars on our data points.   For that, you'll have to learn the ErrorListPlot functions.   (Read the documentation.)