% This file is embedded in datatool-user.pdf version 3.4.5 2026-08-23
% Example 67 Select row action
% Label: "ex:selectrow"
% arara: pdflatex
% arara: pdfcrop
\documentclass[12pt]{article}
\pagestyle{empty}
% sample CSV file:
\begin{filecontents}[noheader,overwrite]{studentmarks.csv}
Surname,Forename,StudentNo,Assign1,Assign2,Assign3
"Smith, Jr",John,102689,68,57,72
"Brown",Jane,102647,75,84,80
"Brown",Jane,102646,64,92,79
"Brown",Andy,103569,42,52,54
"Adams",Zoë,105987,52,48,57
"Brady",Roger,106872,68,60,62
"Verdon",Clare,104356,45,50,48
\end{filecontents}


\usepackage{datatool}


% Load data from studentmarks.csv file:
\DTLsetup{store-datum,default-name=marks}
\DTLread{studentmarks.csv} 
\begin{document}
Row selection: 

\DTLaction[
 name=marks,
 key=StudentNo,
 value={105987}
]{select row} 

Student \DTLuse{Forename} \DTLuse{Surname} (105987). 

\DTLaction[
 keys={Assign1-},
 options={mean},
 datum={round=1}
]{current row aggregate} 

Average mark: \DTLuse{mean}.


(Actual value: \DTLget[mean]{\theMean} \DTLdatumvalue{\theMean}.) 
\end{document}
