head 输出包括行名而不是行号
head output include row name not the row number
正在做一道作业题,现在脑子很累,有人能给我指点一下吗?
我整理了一个数据框,整理了我想要的东西——绑架率最高的国家的价值。我刚刚了解到我可以使用尾巴而不是头。
TopKidnap <- NoNACountry[order(NoNACountry$Kidnapping, decreasing = TRUE),]
view(TopKidnap)
head(TopKidnap$Kidnapping, 1)
我答对了
[1] 7.17
但是因为我对数据框进行了排序,国家名称现在是 第 1 行。
我的目标是输出行名称 Luxembourg 以及值 17。我想我接近以下代码,但我只是没有在书籍(R in Action、R Cookbook 或 R for Data Science)。将书籍与 Stack Overflow 结合起来...
head(row.names.data.frame(TopKidnap$Kidnapping), 1)
有人可以向我指出正确的方向吗?我用第一列构建数据框作为 characters 是国家名称,其余 table 作为数字。我认为它应该类似于 addrownums
,但我没有看到它。
d放在下面
TopKidnap <- structure(list(Intentional.homicide = c(0.65, 0.71, 1.31, 0.71,
1.28), Attempted.intentional.homicide = c(9.61, 2.18, 1.86, 0.55,
6.46), Assault = c(103.76, 160.31, 1.46, 102.18, 15.31), Kidnapping = c(7.17,
5.44, 2.01, 1.71, 1.17), Sexual.violence = c(48.22, 49.05, 9.85,
67.86, 8.52), Robbery = c(74.44, 43.43, 17.85, 41.66, 11.42),
Unlawful.acts.involving.controlled.drugs.or.precursors = c(690.35,
433.33, 35.72, 421.84, 82.59), Country.Totals.per.000s = c(934.2,
694.45, 70.06, 636.51, 126.75)), row.names = c("Luxembourg",
"Germany (until 1990 former territory of the FRG)", "Romania",
"Ireland", "Kosovo (under United Nations Security Council Resolution 1244/99)"
), class = "data.frame")
一种可能的方法是对 data.frame 而不是列进行子集化。你可以用
head(TopKidnap[, "Kidnapping", drop=FALSE], 1)
# Kidnapping
# Luxembourg 7.17
drop=FALSE
是为了不让R简化结果。通常,当您 select 一列时,它会转换为向量。 drop=FALSE
将其保存为 data.frame 以保留行名称。
正在做一道作业题,现在脑子很累,有人能给我指点一下吗?
我整理了一个数据框,整理了我想要的东西——绑架率最高的国家的价值。我刚刚了解到我可以使用尾巴而不是头。
TopKidnap <- NoNACountry[order(NoNACountry$Kidnapping, decreasing = TRUE),]
view(TopKidnap)
head(TopKidnap$Kidnapping, 1)
我答对了
[1] 7.17
但是因为我对数据框进行了排序,国家名称现在是 第 1 行。
我的目标是输出行名称 Luxembourg 以及值 17。我想我接近以下代码,但我只是没有在书籍(R in Action、R Cookbook 或 R for Data Science)。将书籍与 Stack Overflow 结合起来...
head(row.names.data.frame(TopKidnap$Kidnapping), 1)
有人可以向我指出正确的方向吗?我用第一列构建数据框作为 characters 是国家名称,其余 table 作为数字。我认为它应该类似于 addrownums
,但我没有看到它。
d放在下面
TopKidnap <- structure(list(Intentional.homicide = c(0.65, 0.71, 1.31, 0.71,
1.28), Attempted.intentional.homicide = c(9.61, 2.18, 1.86, 0.55,
6.46), Assault = c(103.76, 160.31, 1.46, 102.18, 15.31), Kidnapping = c(7.17,
5.44, 2.01, 1.71, 1.17), Sexual.violence = c(48.22, 49.05, 9.85,
67.86, 8.52), Robbery = c(74.44, 43.43, 17.85, 41.66, 11.42),
Unlawful.acts.involving.controlled.drugs.or.precursors = c(690.35,
433.33, 35.72, 421.84, 82.59), Country.Totals.per.000s = c(934.2,
694.45, 70.06, 636.51, 126.75)), row.names = c("Luxembourg",
"Germany (until 1990 former territory of the FRG)", "Romania",
"Ireland", "Kosovo (under United Nations Security Council Resolution 1244/99)"
), class = "data.frame")
一种可能的方法是对 data.frame 而不是列进行子集化。你可以用
head(TopKidnap[, "Kidnapping", drop=FALSE], 1)
# Kidnapping
# Luxembourg 7.17
drop=FALSE
是为了不让R简化结果。通常,当您 select 一列时,它会转换为向量。 drop=FALSE
将其保存为 data.frame 以保留行名称。