Python day 5
·
import pandas as pd
import warnings
warnings.filterwarnings('ignore') # 忽略警告信息
import pandas as pd #导入pandas包
data = pd.read_csv(r'E:\PythonStudy\data.csv') # 读取文件,路径可以是绝对路径/相对路径
c = data.columns.tolist()
for i in c:
if data[i].dtype != 'object':
if data[i].isnull().sum() > 0:
mean_value = data[i].mean()
data[i].fillna(mean_value, inplace=True)
print(data.isnull().sum())
discrete_lists = [] # 新建一个空列表,用于存放离散变量名
for discrete_features in data.columns:
if data[discrete_features].dtype == 'object':
discrete_lists.append(discrete_features)
data = pd.get_dummies(data, columns=discrete_lists, drop_first=True)
print(data.columns)
data2 = pd.read_csv(r"E:\PythonStudy\data.csv")
list_final = [] # 新建一个空列表,用于存放独热编码后新增的特征名
for i in data.columns:
if i not in data2.columns:
list_final.append(i) # 这里打印出来的就是独热编码后的特征名
# 2.布尔值→整数型
for i in list_final:
data[i] = data[i].astype(int)
# 3.补值(用众数补值)
for i in data.columns:
if data[i].isnull().sum() > 0: # 找到存在缺失值的列
#计算该列的均值
mean_value = data[i].mean()
#用均值填充缺失值
data[i].fillna(mean_value, inplace=True)
print(data.isnull().sum())
结果:
1.运行与调试

2.结果
更多推荐
所有评论(0)