Python大数据第一次的作业


标准化_1:

 

import pandas as pd

# 读取数据
grade = pd.read_csv('cj.csv', encoding='gbk')

# Z-score标准化
from sklearn.preprocessing import *

scaler_z = StandardScaler(copy=True)

for i in ["英语","体育","军训","数分","高代","解几"]:
    grade[i] = scaler_z.fit_transform(grade[[i]])
print(grade)
grade_zscore = grade.iloc[:,-7:-1].sum(axis=1)

# Min-Max标准化
from sklearn.preprocessing import *

scaler_m = MinMaxScaler(copy=False)

for j in ["英语","体育","军训","数分","高代","解几"]:
    grade[j] = scaler_m.fit_transform(grade[[j]])
    
grade_minmax = grade.iloc[:, -7:-1].sum(axis=1)

 

 

 

离群值:

 

# 导入需要的包
import pandas as pd
from sklearn.neighbors import *

# 读取数据
car_sales = pd.read_csv('car_sales.csv',encoding='gbk')

# 取出Quantity列
data = car_sales[["Quantity"]]

# 局部因常因子检测
scaler = LocalOutlierFactor()
scaler.fit(data)

# 添加新列LOF保存局部离群因子的值
data['LOF'] = - scaler.negative_outlier_factor_

# 选出局部离群因子大于1.5的样本
quantity_lof = data[data.LOF>1.5]
print(quantity_lof )

 

 

 

标准化_2:

 

# 导入需要的工具包
import pandas as pd
import numpy as np
from sklearn.preprocessing import *
# 读取数据集
std_df = pd.read_csv('car_sales.csv', encoding = 'gbk')
print(std_df)

scaler = StandardScaler(copy=True)
# 获得Z-Score标准化后的DataFrame对象
std_df_zscore = pd.DataFrame(scaler.fit_transform(std_df[['Quantity']]), columns = ['Quantity_StandardScaled'] )
# 为上述DataFrame对象添加初始数据集中的销量列'Quantity'
std_df_zscore['Quantity'] = pd.DataFrame(['Quantity'])
# 输出Z-Score标准化后汽车销量的均值和方差
#print('均值:', std_df_zscore['____'].mean(axis = 0))
#print('方差:', std_df_zscore['____'].std(axis = 0))

out = std_df_zscore.head(5)
print(out)

 

 

 

缺失值:

# 导入需要的工具包
import pandas as pd
from sklearn.preprocessing import Imputer

# 读取数据集
data = pd.read_csv('car_sales.csv')
# print(data)
# 设定参数
# imp = Imputer(missing_values = 'NaN', strategy = '____', axis = ____)
imp = Imputer(missing_values = 'NaN', strategy = 'mean', axis = 0)


# 拟合填补参数
temp = imp.fit(data[['Quantity']])
print(temp)
# 缺失值填充
# data['Quantity'] = imp.transform(____)
data['Quantity'] = imp.transform(data[['Quantity']])


# 验证是否填充
if data['Quantity'].isnull().any() == False:
    print("汽车销量缺失值已填充!")

 

离散化:

 

# 导入需要的工具包
import pandas as pd
import numpy as np
from sklearn.preprocessing import *

# 读取数据集
binary_df = pd.read_csv('car_sales.csv',encoding='gbk')


# 二值化,阈值设置为800
scaler = Binarizer(threshold=800)
quantity_binary = scaler.fit_transform(binary_df[['Quantity']])

# 查看销量大于800的有多少数据
print(sum(quantity_binary))

 

 

 

特征编码:

 

# 导入需要的工具包
import pandas as pd
import numpy as np
from sklearn.preprocessing import *

# 读取数据集
feature_df = pd.read_csv('car_sales.csv',encoding='gbk')
# print(feature_df)

# 建立标签编码器
le = LabelEncoder()

# 进行标签编码,并返回ndarray对象label_list
# label_list = le.fit(feature_df.['Make'])
label_list = le.fit_transform(feature_df['Make'])
print(label_list)
# 查看本数据集中共有多少汽车品牌
print(le.classes_)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM