Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 是否将列的每个唯一值分隔为单独的列并删除原始列?_R - Fatal编程技术网

R 是否将列的每个唯一值分隔为单独的列并删除原始列?

R 是否将列的每个唯一值分隔为单独的列并删除原始列?,r,R,使用dataframemtcars,如何创建一个新的dataframe,使用dataframe中除gear之外的所有列?在新的数据框中,我想将每个唯一的gear值分隔成一列。我该怎么做呢?这将完成您所追求的一切 library(fastDummies) # Numerically encode gear column as dummy variables mt_cars_with_gear_dummy_variables <- fastDummies::dummy_cols(mtcar

使用dataframe
mtcars
,如何创建一个新的dataframe,使用dataframe中除
gear
之外的所有列?在新的数据框中,我想将每个唯一的
gear
值分隔成一列。我该怎么做呢?

这将完成您所追求的一切


library(fastDummies)

# Numerically encode gear column as dummy variables
mt_cars_with_gear_dummy_variables <- fastDummies::dummy_cols(mtcars, select_columns = "gear")


# Remove original gear column
mt_cars_with_gear_dummy_variables[, !names(mt_cars_with_gear_dummy_variables) %in% c("gear")] 


mt_cars_with_gear_dummy_variables


图书馆(fastDummies)
#将齿轮柱作为虚拟变量进行数字编码

mt\u cars\u带有齿轮虚拟变量您可以使用
模型一步完成此操作。矩阵

model.matrix(~ . + gear - 1, mtcars)
其中:

                     mpg cyl  disp  hp drat    wt  qsec vs am gear3 gear4 gear5 carb
Mazda RX4           21.0   6 160.0 110 3.90 2.620 16.46  0  1     0     1     0    4
Mazda RX4 Wag       21.0   6 160.0 110 3.90 2.875 17.02  0  1     0     1     0    4
Datsun 710          22.8   4 108.0  93 3.85 2.320 18.61  1  1     0     1     0    1
Hornet 4 Drive      21.4   6 258.0 110 3.08 3.215 19.44  1  0     1     0     0    1
Hornet Sportabout   18.7   8 360.0 175 3.15 3.440 17.02  0  0     1     0     0    2
...
Maserati Bora       15.0   8 301.0 335 3.54 3.570 14.60  0  1     0     0     1    8
Volvo 142E          21.4   4 121.0 109 4.11 2.780 18.60  1  1     0     1     0    2
使用选择:
选择(model.matrix,-gear)

建议:最好做
fastDummies::dummy\u cols(mtcars,选择_columns=“gear”)
,然后放下
gear
列。@humany\u 008更好,因为它很好地命名了虚拟列(不像以前提供向量时那样)。我已经更新了答案,以反映