python如何pandas字符串数据列变成int,并处理空值为平均值
时间: 2024-05-31 18:08:47 浏览: 302
您可以使用 Pandas 中的 astype() 方法将字符串数据列转换为整数数据列,然后使用 fillna() 方法将空值替换为该列的平均值。下面是一个示例代码:
import pandas as pd
# 创建数据帧
df = pd.DataFrame({'A': ['1', '2', '3', '4', '5', ''],
'B': ['5', '4', '3', '2', '1', '']})
# 将数据类型转换为整数
df['A'] = df['A'].astype(int)
df['B'] = df['B'].astype(int)
# 计算每列的平均值
mean_A = df['A'].mean()
mean_B = df['B'].mean()
# 将空值替换为平均值
df['A'].fillna(mean_A, inplace=True)
df['B'].fillna(mean_B, inplace=True)
# 打印结果
print(df)
相关问题
python如何pandas字符串数据列变成int,需要提前处理空置为平均值
可以使用 pandas 中的 fillna 和 astype 方法来实现将字符串数据列转化为整型数据列,并且将空值填充为该列平均值的操作,具体代码如下:
```python
import pandas as pd
# 创建示例数据
data = {'A': ['1', '2', '3', '4', '5', ''],
'B': ['6', '7', '8', '9', '', '10']}
df = pd.DataFrame(data)
# 将字符串数据列转化为整型数据列
df['A'] = df['A'].fillna(df['A'].astype(float).mean()).astype(int)
df['B'] = df['B'].fillna(df['B'].astype(float).mean()).astype(int)
print(df)
```
上述代码中,首先创建了一个示例数据,接着使用 fillna 和 astype 方法将数据列 A 和 B 转化为整型数据列,并且将空值填充为该列平均值。最后输出转化后的数据框。
阅读全文