Hi Luke,
As Sean points out, integrating an interpolating function for experimental data is questionable. There is the issue of what the interpolation has done between the data points. One way to restrict this is to use InterpolationOrder->1 in the function to cause NIntegrate to be getting something close to a trapezoidal rule. But questions still remain. One way to eliminate all questions is to just execute a known rule. For example, the user-defined function below performs numerical integration by the trapezoidal rule. It assumes the data is a list of x-y pairs, and is sorted by increasing x values. But that's all. There is no question about added information.
Best regards,
David
trapezoidal[list_] := Total@Table[
(list[[n, 1]] -
list[[n - 1, 1]]) (list[[n - 1, 2]] + list[[n, 2]])/2,
{n, 2, Length[list]}
]