You can either hide the newly created row when you're printing the transposed table with the approach from Pgfplotstable without headings row (as suggested by Alenanno in the comments).
However, that way you can't use formatting options like every head row, which are especially useful when using booktabs, since you're not printing the head row.
You can stop the new row from being generated by setting
colnames from=N, input colnames to=N
in the \pgfplotstabletranspose options. The first option tells PGFPlotstable to use an existing column (in this case N) for the column names in the transposed table, the second option tells PGFPlotstable to use N as the header for the original column names.

\documentclass{article}
\usepackage{booktabs}
\usepackage{pgfplotstable}
\begin{document}
\pgfplotstableread{
N Ans
1 -36
2 33
3 -52
4 -22
5 33
6 38
7 48
8 -100
}\mytable
\pgfplotstabletranspose[string type,
colnames from=N,
input colnames to=N
]\mytablenew{\mytable}
\pgfplotstabletypeset[
every head row/.style={
before row=\toprule,
after row=\midrule
},
every last row/.style={
after row=\bottomrule
},
string type]{\mytablenew}
\end{document}
\pgfplotstabletypeset[string type]{\mytablenew}to\pgfplotstabletypeset[string type, every head row/.style={ output empty row, }]{\mytablenew}– Rico Jan 20 '16 at 13:11\pgfplotstabletranspose[string type, colnames from=N, input colnames to=N]\mytablenew{\mytable}to avoid generating that extra row.colnames from=Ntells PGFPlots to use an existing column for the column names,input colnames to=Ntells it to useNin the first cell. – Jake Jan 20 '16 at 13:16