📌  相关文章
📜  pandas 将字符串转换为浮点数 - Python (1)

📅  最后修改于: 2023-12-03 15:18:14.819000             🧑  作者: Mango

pandas 将字符串转换为浮点数 - Python

在数据分析和清洗中,我们经常需要将字符串转换为浮点数。pandas是Python中最常用的数据分析库之一,它可以方便地将字符串转换为浮点数。

1. 使用astype()方法

astype()是pandas中常用的方法之一,该方法可以将Series或DataFrame中的数据类型转换为指定类型。我们可以将字符串转换成浮点数。

import pandas as pd

# 创建一个Series对象
s = pd.Series(['1', '2', '3.14', '4.26'])
# 使用astype()方法将字符串转换为浮点数
s_float = s.astype(float)
print(s_float)

输出结果为:

0    1.00
1    2.00
2    3.14
3    4.26
dtype: float64

代码片段:

import pandas as pd

# 创建一个Series对象
s = pd.Series(['1', '2', '3.14', '4.26'])
# 使用astype()方法将字符串转换为浮点数
s_float = s.astype(float)
print(s_float)
2. 将字符串替换为浮点数

如果我们有一个DataFrame对象,其中包含需要转换为浮点数的数据列,我们可以使用apply方法和to_numeric函数将所有字符串替换为浮点数。

import pandas as pd

# 创建一个包含字符串的DataFrame
df = pd.DataFrame({'col1': ['1', '2', '3.14', '4.26'], 'col2': ['5', '6', '7', '8']})
print(df)

# 将字符串替换为浮点数
df['col1'] = df['col1'].apply(pd.to_numeric)
print(df)

上述代码将DataFrame对象中的col1列中的字符串替换为浮点数,并输出结果。

  col1 col2
0    1    5
1    2    6
2 3.14    7
3 4.26    8

   col1 col2
0  1.00    5
1  2.00    6
2  3.14    7
3  4.26    8

代码片段:

import pandas as pd

# 创建一个包含字符串的DataFrame
df = pd.DataFrame({'col1': ['1', '2', '3.14', '4.26'], 'col2': ['5', '6', '7', '8']})
print(df)

# 将字符串替换为浮点数
df['col1'] = df['col1'].apply(pd.to_numeric)
print(df)

总结:pandas提供了多种方法将字符串转换为浮点数,其中最常见的方法是使用astype()方法和apply方法结合to_numeric函数,可以方便地将数据类型转换为指定类型。