修改dataframe中列的格式object到float

目录


方法一:把所有列(或部分列)都转为 float格式

traindata = pd.DataFrame(traindata, dtype=np.float)
collist = data.columns.tolist()
data[collist[1:]] = pd.DataFrame(data[collist[1:]], dtype=np.float)

转换某一列

df["gdp"] = pd.to_numeric(df["gdp"],errors='coerce')
df.dtypes

name     object
year     object
gdp     float64
dtype: object

np.array格式转换为float

arr = np.array([1, 2, 3, 4, 5])  # 创建一个 默认 int32 类型的数组
float_arr = arr.astype(np.float64)  # 将这个数组转化为 float64 位的数组
print(float_arr.dtype)  # 打印这个数组的类型,出结果float64

方式三:修改部分列

import pandas as pd

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

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

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

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

输出:

   one two
0    1   2
1    2   2
----------------
修改前类型:
one     int64
two    object
dtype: object
----------------
修改后类型
one    int64
two    int32
dtype: object
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值