r - 如何从 R 中的表中选择特定行?
问题描述
我有一个汽车数据集,其中有一个燃料类型属性,即“Gas”和“Diesel”。我想根据这些类型创建两个单独的数据框。除燃料类型外,数据框还应包含整行。
例如型号,制造,制造年份,燃料类型,迈尔斯思域,本田,2020,汽油,1000 索纳塔,现代,2017,柴油,4500 Fusion,福特,2016,柴油,6000 CTS,凯迪拉克,2018,汽油,5000
现在结果应该是两个不同的数据帧,如下所示
型号,制造,制造年份,Fuel.type,Miles Civic,Honda,2020,Gas,1000 CTS,Cadillac,2018,Gas,5000
和
型号,制造,制造年份,燃料类型,迈尔斯索纳塔,现代,2017,柴油,4500 Fusion,福特,2016,柴油,6000
解决方案
我们可以使用split
创建一个list
data.frames
lst1 <- split(df1, df1$Fuel.type)
数据
df1 <- structure(list(Model = c("Civic", "Sonata", "Fusion", "CTS"),
Make = c("Honda", "Hyundai", "Ford", "Cadillac"), Mfg.Year = c(2020L,
2017L, 2016L, 2018L), Fuel.type = c("Gas", "Diesel", "Diesel",
"Gas"), Miles = c(1000L, 4500L, 6000L, 5000L)),
class = "data.frame", row.names = c(NA,
-4L))