dataframe 字符串转数字
时间: 2023-11-18 19:12:48 浏览: 58
要将 DataFrame 中的字符串列转换为数字列,可以使用 `astype()` 函数将特定列的数据类型更改为 `float` 或 `int`。以下是一个示例:
```python
import pandas as pd
# 创建一个包含字符串列的 DataFrame
data = {'col1': ['1', '2', '3', '4'],
'col2': ['5', '6', '7', '8']}
df = pd.DataFrame(data)
# 将字符串列转换为数字列
df['col1'] = df['col1'].astype(int)
df['col2'] = df['col2'].astype(float)
print(df.dtypes)
```
输出结果将显示转换后的数据类型:
```
col1 int32
col2 float64
dtype: object
```
在上面的示例中,我们使用 `astype()` 函数将 'col1' 列转换为整数类型(`int`),将 'col2' 列转换为浮点数类型(`float`)。
相关问题
pandas数字转换字符串
要将Pandas中的数字转换为字符串,您可以使用astype()方法。下面是一个示例:
```python
import pandas as pd
# 创建一个包含数字的DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
# 将'A'列中的数字转换为字符串
df['A'] = df['A'].astype(str)
print(df.dtypes)
```
输出:
```
A object
B int64
dtype: object
```
在这个示例中,我们将'A'列中的数字转换为字符串类型。通过使用astype(str),我们可以将整数类型转换为对象类型(字符串)。
dataframe中替换数字
如果你想替换 dataframe 中的数字,可以使用 pandas 的 replace() 方法。下面是一个例子:
假设你有一个 dataframe,其中包含数字和字符串:
```
import pandas as pd
data = {'A': [1, 2, 3, 4, 5], 'B': ['a', 'b', 'c', 'd', 'e']}
df = pd.DataFrame(data)
```
现在,你想将 dataframe 中的所有数字替换为另一个数字,比如将所有的 1 替换为 10,可以使用 replace() 方法:
```
df.replace(1, 10, inplace=True)
```
这将把 dataframe 中的所有 1 替换为 10,并将结果保存回原来的 dataframe 中。
你也可以使用 replace() 方法替换多个值,比如将 1 替换为 10,将 2 替换为 20:
```
df.replace({1: 10, 2: 20}, inplace=True)
```
这将把 dataframe 中的所有 1 替换为 10,所有 2 替换为 20,并将结果保存回原来的 dataframe 中。