Especificación de dtype float32 con pandas.read_csv en pandas 0.10.1
Estoy intentando leer un simple archivo separado por espacios con pandasread_csv
método. Sin embargo, los pandas no parecen estar obedeciendo a midtype
argumento. ¿Tal vez lo estoy especificando incorrectamente?
He destilado mi llamada algo complicada aread_csv
a este simple caso de prueba. En realidad estoy usando elconverters
argumento en mi escenario 'real' pero lo eliminé por simplicidad.
A continuación se muestra mi sesión ipython:
>>> cat test.out
a b
0.76398 0.81394
0.32136 0.91063
>>> import pandas
>>> import numpy
>>> x = pandas.read_csv('test.out', dtype={'a': numpy.float32}, delim_whitespace=True)
>>> x
a b
0 0.76398 0.81394
1 0.32136 0.91063
>>> x.a.dtype
dtype('float64')
También he intentado esto usando esto con unadtype
denumpy.int32
onumpy.int64
. Estas elecciones dan como resultado una excepción:
AttributeError: 'NoneType' object has no attribute 'dtype'
Estoy asumiendo elAttributeError
¿Es porque los pandas no intentarán automáticamente convertir / truncar los valores flotantes en un entero?
Estoy ejecutando en una máquina de 32 bits con una versión de Python de 32 bits.
>>> !uname -a
Linux ubuntu 3.0.0-13-generic #22-Ubuntu SMP Wed Nov 2 13:25:36 UTC 2011 i686 i686 i386 GNU/Linux
>>> import platform
>>> platform.architecture()
('32bit', 'ELF')
>>> pandas.__version__
'0.10.1'