You can do this without modification. The problem is that your coordinates are not named N1, N2, and N3 due to spurious spaces. Change it to:
\begin{tikzpicture}
\foreach \x / \y in {1/3,2/8,3/14%
}{
\coordinate (N\x) at (\x,\y);
\path[draw] (N\x) circle (1em); %% ok
};
\path[draw] (N1) -- (N3);
\end{tikzpicture}
and you are fine.
As Andrew already mentioned as a comment to your question. The last , has to go. It runs through the loop again with \x and \y empty. This does actually draw an extra circle at (1,1) and defines the coordinate N. I am not completely sure why it gets drawn at (1,1) to be honest. I would expect it to default to (0,0) instead. Does anybody have an explanation for this?
Edit: I think I know why it occurs at (1,1). The coordinate system has a value for x and y and when you say something like (3,7) this means take 3 steps of size x in the x direction and 7 steps of size y in the y direction. This allows to write coordinates without units and change the 'scale' afterwards. These values for x and y default to 1 cm and not 0 cm such that writing (3,7) becomes (3 cm, 7 cm) instead of (0 cm, 0 cm) which would be far less usefull. When you leave them empty, the defaults for x and y are used.
\xand\yempty. – Andrew Stacey Nov 25 '11 at 10:55