从对象到字符串的熊猫dtype转换
我有一个csv文件,其中有几列是数字,很少是字符串。 当我尝试myDF.dtypes
它将所有字符串列显示为object
。
在这之前有人问了一个相关的问题,为什么这样做。 是否有可能重新从对象到字符串的dtype
?
另外,一般来说,有没有简单的方法可以将dtype
从int64
和float64
重新转换为int32
和float32
并保存数据的大小(在内存中/磁盘上)?
所有字符串都表示为可变长度(这是dtype所持有的object
)。 如果你愿意,你可以做series.astype('S32')
; 但是如果您将它存储在DataFrame中或对它做了很多工作,它将会被重写。 这是为了简单。
某些序列化格式,例如HDFStore
将字符串作为固定长度字符串存储在磁盘上。
如果你愿意,你可以使用series.astype(int32)
,它将以新的类型存储。
df = your dataframe object with values
print('dtype in object form :')
print(df.dtypes[df.columns[0]]) // output: dtype('O')
print('ndtype in string')
print(str(df.dtypes[df.columns[0]])) // output: 'object'
链接地址: http://www.djcxy.com/p/19167.html