tutorial tab separated read_csv read functions example dtype python pandas

python - tab - pandas read_csv dtype example



Especificando el tipo de datos en Pandas csv reader (2)

Desde Pandas 0.11.0 puede usar el argumento dtype para especificar explícitamente el tipo de datos para cada columna:

d = pandas.read_csv(''foo.csv'', dtype={''BAR'': ''S10''})

Acabo de comenzar con Pandas y estoy leyendo en un archivo csv usando el método read_csv() . La dificultad que tengo es evitar que los pandas conviertan mis números de teléfono en números grandes, en lugar de mantenerlos como cadenas. Definí un convertidor que solo dejó los números solos, pero luego se convirtieron en números. Cuando cambié mi convertidor para anteponer una ''z'' a los números de teléfono, se quedaron las cadenas. ¿Hay alguna manera de mantener las cadenas sin modificar los valores de los campos?


Parece que no puedes evitar que los pandas intenten convertir valores numéricos / booleanos en el archivo CSV. Eche un vistazo al código fuente de pandas para los analizadores de E / S, en particular las funciones _convert_to_ndarrays y _convert_types . https://github.com/pydata/pandas/blob/master/pandas/io/parsers.py

Siempre puede asignar el tipo que desea después de haber leído el archivo:

df.phone = df.phone.astype(str)