python类型转换

来源:互联网 发布:指南针多空资金源码 编辑:程序博客网 时间:2024/05/22 00:17

使用astype实现dataframe字段类型转换

# -*- coding: UTF-8 -*-import pandas as pddf = pd.DataFrame([{'col1':'a', 'col2':'1'}, {'col1':'b', 'col2':'2'}])print df.dtypesdf['col2'] = df['col2'].astype('int')print '-----------'print df.dtypesdf['col2'] = df['col2'].astype('float64')print '-----------'print df.dtypes
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

输出结果:

col1    objectcol2    objectdtype: object-----------col1    objectcol2     int32dtype: object-----------col1     objectcol2    float64dtype: object
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

注:data type list

Data type   Descriptionbool_   Boolean (True or False) stored as a byteint_    Default integer type (same as C long; normally either int64 or int32)intc    Identical to C int (normally int32 or int64)intp    Integer used for indexing (same as C ssize_t; normally either int32 or int64)int8    Byte (-128 to 127)int16   Integer (-32768 to 32767)int32   Integer (-2147483648 to 2147483647)int64   Integer (-9223372036854775808 to 9223372036854775807)uint8   Unsigned integer (0 to 255)uint16  Unsigned integer (0 to 65535)uint32  Unsigned integer (0 to 4294967295)uint64  Unsigned integer (0 to 18446744073709551615)float_  Shorthand for float64.float16 Half precision float: sign bit, 5 bits exponent, 10 bits mantissafloat32 Single precision float: sign bit, 8 bits exponent, 23 bits mantissafloat64 Double precision float: sign bit, 11 bits exponent, 52 bits mantissacomplex_    Shorthand for complex128.complex64   Complex number, represented by two 32-bit floats (real and imaginary components)complex128  Complex number, represented by two 64-bit floats (real and imaginary components)
0 0
原创粉丝点击