booktabs provides the command \cmidrule for rules that extend over only certain columns. One example would be:

\documentclass{article}
\usepackage{booktabs}
\begin{document}
\begin{tabular}{lcr}
\toprule
A & B & C \\
\cmidrule{1-2}
D & E & F\\
\cmidrule(lr{1em}){2-3}
G & H & I\\
\cmidrule[2pt](lr){1-1}
J & H & K\\
\bottomrule
\end{tabular}
\end{document}
The general syntax is
\cmidrule[thickness](shortening){colstart-colend}
where shortening specifies which end(s) l left or r right should be shortened. As standerd the shortening amount is 0.5em when l or r is specified; it can be changed for a given end by writing e.g. r{1em} instead of r.
The table in your example is exactly one of the examples in the booktabs manual, which also contains the code to generate it, see the top of page 5.
\toprule[5pt]. For partial width I would want to see a sensible use case before suggesting a solution. – Andrew Swann Nov 11 '18 at 11:49