저는 파이썬 2.7.x와 함께 팬더 0.18.1을 사용하고 있습니다. 먼저 읽은 빈 데이터 프레임이 있습니다. 나는이 열의 유형이 OK 인 object
임을 확인합니다. 한 행의 데이터를 지정하면 숫자 값의 유형이 float64
으로 변경됩니다. 나는 int
또는 int64
을 기대하고있었습니다. 왜 이런 일이 생길까요?팬더 : 숫자 플로트의 기본 열 유형이 왜입니까?
숫자 값의 경우 .
이 아닌 이상 팬더는 숫자 값이 기본적으로 int
으로 처리된다는 것을 알기 위해 일부 전역 옵션을 설정하는 방법이 있습니까? 예를 들어, [0 1.0, 2.]
, 첫 번째 열은 int
이지만 다른 두 개는 float64
? 예를 들어
:
>>> df = pd.read_csv('foo.csv', engine='python', keep_default_na=False)
>>> print df.dtypes
bbox_id_seqno object
type object
layer object
ll_x object
ll_y object
ur_x object
ur_y object
polygon_count object
dtype: object
>>> df.loc[0] = ['a', 'b', 'c', 1, 2, 3, 4, 5]
>>> print df.dtypes
bbox_id_seqno object
type object
layer object
ll_x float64
ll_y float64
ur_x float64
ur_y float64
polygon_count float64
dtype: object