西安网站建设方案维护,网页设计与制作 教学效果,wordpress自动连接,软件开发公司地址要是作深度学习的话#xff0c;可以直接用tensoflow框架的预处理层#xff0c;我试过#xff0c;比PyTorch自己写出来的会好一点#xff0c;主要是简单好用。处理CSV文件
它类别的处理逻辑是onehot#xff0c;比较标准稀疏#xff0c;数值的话就是归一化了。
有时候不需…要是作深度学习的话可以直接用tensoflow框架的预处理层我试过比PyTorch自己写出来的会好一点主要是简单好用。处理CSV文件
它类别的处理逻辑是onehot比较标准稀疏数值的话就是归一化了。
有时候不需要这么麻烦就数字就完事儿了。
处理起来要人工把数值和类别分出来
def hk_list(a, b):return [i for i in range(a, b)]
# df_1 就是一个原始数据要分出来它的数值列和类别列
ca_list df_1.columns[hk_list(2,10)[114, 116, 138, 143,144] hk_list(120,129) hk_list(172, 175)].to_list()
num_list df_1.columns[hk_list(11, 114)[115] hk_list(117, 120) hk_list(129, 138) hk_list(139,143) hk_list(145,172)].to_list()分出来后就是对类别列处理一下处理成数字的
df_2 pd.DataFrame()
df_2[[id]] df_1[[id]]
df_2[ca_list] df_1[ca_list].apply(lambda x: x.astype(category).cat.codes)通过这样的操作数据就出来了而且还能把空值也给处理了。
数值的话要类型转换
df_2[num_list] df_1[num_list].apply(pd.to_numeric, errorsignore)
df_2[num_list].fillna(0, inplaceTrue)归一化的可以自己根据需要自己写了有最大最小归一化也有正态分布那种的。
from sklearn.preprocessing import MinMaxScaler, StandardScaler# 最小-最大规范化
scaler MinMaxScaler()
scaled_data scaler.fit_transform(df[column_name].values.reshape(-1, 1))# Z-Score 归一化
scaler StandardScaler()
scaled_data scaler.fit_transform(df[column_name].values.reshape(-1, 1))
最小-最大规范化
最小-最大规范化将数值列中所有的数据映射到 [0, 1] 的范围内公式如下 x n o r m ( x − x m i n ) / ( x m a x − x m i n ) x_{norm} (x - x_{min}) / (x_{max} - x_{min}) xnorm(x−xmin)/(xmax−xmin) 其中x 是原始数据x_min 和 x_max 分别是原始数据的最小值和最大值。这种方法适用于数据集没有明显的离群值的情况.
Z-Score 归一化
Z-Score 归一化将数值列中所有的数据转换为标准正态分布均值为 0方差为 1的数值。公式如下 x n o r m ( x − m e a n ) / s t d x_{norm} (x - mean) / std xnorm(x−mean)/std 其中x 是原始数据mean 和 std 分别是原始数据的均值和标准差。这种方法适用于数据集有明显离群值或者需要保留数据的分布信息的情况。