DataFrame数据类型的转换

生成一个DataFrame

import pandas as pd

df = pd.DataFrame({'one':[1, 2, 3, 4], 'two':[5, 6, 7, 8]})
print(df)
   one  two
0    1    5
1    2    6
2    3    7
3    4    8

查看df的数据类型

#查看df本身的数据类型
print(type(df))
<class 'pandas.core.frame.DataFrame'>
#查看df内部的数据类型
print(df.dtypes)
one    int64
two    int64
dtype: object

对df进行数据类型的转换

方法一:df.astype()

#将df的全部数据转换为float
df = df.astype(float)
print(df.dtypes)
print('df的全部数据已从int64转换为float64')
one    float64
two    float64
dtype: object
df的全部数据已从int64转换为float64
#将df某一列(one列)的数据转换为object
df['one'] = df['one'].astype(object)
print(df.dtypes)
print('df one列的数据已从float64转换为object')
one     object
two    float64
dtype: object
df one列的数据已从float64转换为object

方法二:pd.DataFrame()

#将df的全部数据转换为float
df = pd.DataFrame(df, dtype = float)
print(df.dtypes)
print('df的全部数据已转换为float64')
one    float64
two    float64
dtype: object
df的全部数据已转换为float64
#将df某一列(one列)的数据转换为int
df['one'] = pd.DataFrame(df['one'], dtype = int)
print(df.dtypes)
print('df one列的数据已从float64转换为int64')
one      int32
two    float64
dtype: object
df one列的数据已从float64转换为int64
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐