python怎么把float转换为string_python – 将pandas dataframe中的列从String转换为Float

试试这个:

df_raw['PricePerSeat_Outdoor'] = pd.to_numeric(df_raw['PricePerSeat_Outdoor'],errors='coerce')

这是一个例子:

In [97]: a = pd.Series(['17.21','17.34','15.23','-','','12.34']

In [98]: b = pd.Series(['0.21','0.34','0.23','0.34'])

In [99]: df = pd.DataFrame({'a':a,'b':b})

In [100]: df['c'] = np.random.choice(['a','b','b'],len(df))

In [101]: df

Out[101]:

a b c

0 17.21 0.21 a

1 17.34 0.34 b

2 15.23 0.23 b

3 - - b

4 - b

5 - b

6 12.34 0.34 b

In [102]: cols_to_convert = ['a','b']

In [103]: cols_to_convert

Out[103]: ['a','b']

In [104]: for col in cols_to_convert:

.....: df[col] = pd.to_numeric(df[col],errors='coerce')

.....:

In [105]: df

Out[105]:

a b c

0 17.21 0.21 a

1 17.34 0.34 b

2 15.23 0.23 b

3 NaN NaN b

4 NaN NaN b

5 NaN NaN b

6 12.34 0.34 b

校验:

In [106]: df.dtypes

Out[106]:

a float64

b float64

c object

dtype: object

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值