从对象到字符串的熊猫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
