formato de número de telefone no CSV usando pandas

Python / pandas n00b. Eu tenho um código que está processando dados de eventos armazenados em arquivos csv. Dados dedf["CONTACT PHONE NUMBER"] está exibindo o número de telefone como '5555551212.0'. Obviamente, o ".0" é um problema, mas adicionado porque é um número inteiro, imagino?

De qualquer forma, decidi que deveria formatar o número de telefone por razões de usabilidade.

O número vem do arquivo csv, não formatado. O número sempre terá dez dígitos: 5555551212, mas eu gostaria de exibi-lo como (555) 555-1212.

import glob
import os
import pandas as pd
import sys

csvfiles = os.path.join(directory, '*.csv')
for csvfile in glob.glob(csvfiles):
    df = pd.read_csv(filename)
    #formatting the contact phone
    phone_nos = df["CONTACT PHONE NUMBER"]
    for phone_no in phone_nos:
        contactphone = "(%c%c%c)%c%c%c-%c%c%c%c" % tuple(map(ord,phone_no))

A última linha me dá o seguinte erro:not enough arguments for format string

Mas talvez essa não seja a maneira dos pandas de fazer isso. Como estou repetindo uma matriz, também preciso salvar os dados em sua coluna existente ou reconstruí-la depois que os números de telefone forem processados.

questionAnswers(2)

yourAnswerToTheQuestion