目录
object类型的变量是分类变量,查看所有分类变量的取值个数
Label Encoder - 注意要同时code train和test集!
读取数据
表格类型数据
-
读数据,看行数、列数,前几行
df = pd.read_csv("./Data/application_train.csv")
print("Training data shape: ", df.shape)
df.head()
EDA
查看目标变量分布
-
目标变量为分类变量
df['TARGET'].value_counts()
df['TARGET'].plot.hist()
查看缺失值
-
目标dataframe缺失数据的分布
输入:目标dataframe
输出:dataframe里所有有缺失值的变量为列,行为缺失值的个数,和缺失值比例
def missing_values_table(df):
# Total missing values
mis_val = df.isnull().sum()
# Percentage of missing values
mis_val_percent = 100 * df.isnull().sum() / df.shape[0]
# Make a table with the result
mis_val_table = pd.concat([mis_val, mis_val_percent], axis=1)
# Rename columns
mis_val_table_re_columns = mis_val_table.rename(
columns = {0: 'Missing Values',
1: '% of Total Missing Values'})
# Sort the table by percentage of missing, descending
mis_val_table_re_columns = mis_val_table_re_columns[
mis_val_table_re_columns["Missing Values"]!=0
].sort_values(by=["% of Total Missing Values"], ascending=False)
# Print summary information
print("Your selected df has " + str(df.shape[1]) + " columns.\n",
"There are " + str(mis_val_table_re_columns.shape[0]) + "columns have missing values.")
return mis_val_table_re_columns
查看不同类型变量情况
df.dtypes.value_counts()
Category/分类变量预处理
-
object类型的变量是分类变量,查看所有分类变量的取值个数
df.select_dtypes('object').apply(pd.Series.nunique, axis=0)
-
Label Encoder - 注意要同时code train和test集!
# Create a label encoder object
le = LabelEncoder()
le_count = 0
# Iterate thro