Olá pessoal, tudo bem ?

Gostaria de um help, estou querendo separar os nomes pelo: primeiro, segundo e último nome de uma pessoa.
Para separar o primeiro e o último, eu utilizo os respectivos comandos:

banco$firstname = sapply(strsplit(banco$nome, ' '), function(x) x[1])
banco$lastname = sapply(strsplit(banco$nome, ' '), function(x) x[length(x)])

Gostaria de ter uma idéia para separar o segundo nome baseado nesses comandos,

Obrigado e abs a todos,
-----
Wagner S. Tassinari
Departamento de Matemática
Universidade Federal Rural do Rio de Janeiro.
BR-465, Km 7 - Seropedica, RJ - Brasil
CEP: 23890-000
Cel: (21) 96488-5982 (WhatsApp)
Skype: wagner.tassinari
wtassinari@gmail.com
----------------------------------------------------------------------