python DataFrame列类型修改

使用astype如下:

df[[column]] = df[[column]].astype(type)

 

typeintfloat等类型。

示例:

import pandas as pd

data = pd.DataFrame([[1, "2"], [2, "2"]])
data.columns = ["one", "two"]

print(data)

# 当前类型
print("----\n修改前类型:")
print(data.dtypes)

# 类型转换
data[["two"]] = data[["two"]].astype(int)

# 修改后类型
print("----\n修改后类型")
print(data.dtypes)

 

实战:

df_rt_factor = pd.DataFrame(rt_factor_list, columns=[
        'fund_code', 'rt_p', 'rt_beta', 'rt_ind', 'rt_size', 'rt_ep', 'rt_u', 'rt_u_other', 'pr_rt_beta', 'pr_rt_ind',
        'pr_rt_size', 'pr_rt_ep', 'pr_rt_u', 'pr_rt_u_other'])
df_rt_factor[df_rt_factor.columns[1:]] = df_rt_factor[df_rt_factor.columns[1:]].astype(np.float64)
df_rt_factor 
fund_code         object
rt_p             float64
rt_beta          float64
rt_ind           float64
rt_size          float64
rt_ep            float64
rt_u             float64
rt_u_other       float64
pr_rt_beta       float64
pr_rt_ind        float64
pr_rt_size       float64
pr_rt_ep         float64
pr_rt_u          float64
pr_rt_u_other    float64
dtype: object

 

posted on 2017-08-09 10:09  小鸟的士林  阅读(2676)  评论(0)    收藏  举报

导航