R 从数据帧中提取向量

R 从数据帧中提取向量,r,R,如何提取唯一品牌 前面我有一个名称列,我在其中使用了string\u split和split to vector,现在我需要相应地提取?您可以使用lappy提取每个列表的第一个元素,该元素似乎是品牌: usedcars[1:4,16] [[1]] [1] "Hyundai" "Verna" "1.6" "SX" [[2]] [1] "Hyundai" "i10&

如何提取唯一品牌


前面我有一个名称列,我在其中使用了string\u split和split to vector,现在我需要相应地提取?

您可以使用
lappy
提取每个列表的第一个元素,该元素似乎是品牌:

usedcars[1:4,16]

[[1]]
[1] "Hyundai" "Verna"   "1.6"     "SX"     

[[2]]
[1] "Hyundai" "i10"     "Era"    

[[3]]
[1] "Volkswagen"  "Polo"        "Petrol"      "Comfort-line" "1.2L"       

[[4]]
[1] "Maruti" "Wagon"  "R"      "LXI" 
之后,如果您愿意,可以登记:

brand=lapply(usedcars, `[[`, 1)
库(tidyverse)
二手车[1]“现代”“现代”“大众”“马鲁蒂”
#或输出为df
map_df(usedcars,~c(brands=.x[[1]]))
#>#tibble:4 x 1
#>品牌
#>        
#>1现代
#>2现代
#>3大众汽车
#>4马鲁蒂
#或者最后作为另一个列表
映射(usedcars,~`[`(.x,1))
#> [[1]]
#>[1]“现代”
#> 
#> [[2]]
#>[1]“现代”
#> 
#> [[3]]
#>[1]“大众”
#> 
#> [[4]]
#>[1]“马鲁蒂”

由(v2.0.0)于2021-06-03创建,该命令不进行计算,您的命令建议一个数据帧,但您的输出建议一个列表,即它?使用
dput
.dput(usedcars$Name1[c(1,2,3,4)])输出-列表(c(“现代”、“Verna”、“1.6”、“SX”)、c(“现代”、“i10”、“Era”)、c(“大众”、“Polo”、“汽油”,“Comfortline”、“1.2L”)、c(“Maruti”、“Wang”、“R”、“LXI”))前面的名称栏中有“现代Verna 1.6 SX”,我使用了str_split(),它存储为向量以仅返回每个向量的第一个元素,您可以使用
purr::map(usedcars[1:4,16],first)
unlist(brand)