承包建筑工程信息网站,美食网站中饮食资讯该怎么做,做搜索关键词任务网站,网络推广专员是做什么的1 函数介绍
pandas.get_dummies 是 pandas 库中的一个函数#xff0c;它用于将分类变量转换为哑变量/指示变量。所谓的哑变量#xff0c;就是将分类变量的每一个不同的值转换为一个新的0/1变量。在输出的DataFrame中#xff0c;每一列都以该值的名称命名
pandas.get_dummi…1 函数介绍
pandas.get_dummies 是 pandas 库中的一个函数它用于将分类变量转换为哑变量/指示变量。所谓的哑变量就是将分类变量的每一个不同的值转换为一个新的0/1变量。在输出的DataFrame中每一列都以该值的名称命名
pandas.get_dummies(data, prefixNone, prefix_sep_, dummy_naFalse, columnsNone, sparseFalse, drop_firstFalse, dtypeNone)
2 参数介绍
data你想要转换为哑变量的数据prefix 用于在DataFrame列名前添加的字符串。 当对DataFrame调用 get_dummies 时传递一个长度等于列数的列表 dummy_na布尔值默认为 False。是否添加一列来指示 NaN 值如果为 False 则忽略 NaN 值columns 类列表默认为 None。 在 DataFrame 中要编码的列名。 如果 columns 为 None则所有具有 object、string 或 category 数据类型的列都将被转换 sparse 布尔值默认为 False。 哑变量编码的列是否应该由 SparseArrayTrue支持还是由常规的 NumPy 数组False支持 drop_first布尔值默认为 False。是否通过移除第一个级别从 k 个分类级别中获取 k-1 个哑变量
3 举例
3.1 最基本的get_dummies
import pandas as pd
import numpy as npspd.Series(list(abca))s0 a
1 b
2 c
3 a
dtype: object
pd.get_dummies(s)
a b c
0 1 0 0
1 0 1 0
2 0 0 1
3 1 0 03.2 drop_first
此时第一个类就是 全0 向量对应的情况
pd.get_dummies(s,drop_firstTrue)
b c
0 0 0
1 1 0
2 0 1
3 0 03.3 dummy_na
是否为NaN单列一列
s1 pd.Series([a, b, np.nan])
s10 a
1 b
2 NaN
dtype: object
pd.get_dummies(s1)
a b
0 1 0
1 0 1
2 0 0
pd.get_dummies(s1,dummy_naTrue)
a b NaN
0 1 0 0
1 0 1 0
2 0 0 13.4 DataFrame 多列dummies
df pd.DataFrame({A: [a, b, a], B: [b, a, c],C: [1, 2, 3]})
df
A B C
0 a b 1
1 b a 2
2 a c 3
pd.get_dummies(df)
C A_a A_b B_a B_b B_c
0 1 1 0 0 1 0
1 2 0 1 1 0 0
2 3 1 0 0 0 13.5 prefix
df pd.DataFrame({A: [a, b, a], B: [b, a, c],C: [1, 2, 3]})
df
A B C
0 a b 1
1 b a 2
2 a c 3
pd.get_dummies(df,prefix[col1,col2])
C col1_a col1_b col2_a col2_b col2_c
0 1 1 0 0 1 0
1 2 0 1 1 0 0
2 3 1 0 0 0 1