【问题标题】:head output include row name not the row number头输出包括行名而不是​​行号
【发布时间】:2021-12-05 22:28:39
【问题描述】:

正在解决作业问题,现在大脑非常疲倦,有人可以将我推向正确的方向吗?

我已经对数据框进行了排序,并且我已经组织了我想要的东西 - 绑架率最高的国家的价值。我刚刚了解到我可以用 tail 代替 head。

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 用于数据科学)。用 Stack Overflow 梳理书籍就到这里了……

head(row.names.data.frame(TopKidnap$Kidnapping), 1)

请问有人可以将我推向正确的方向吗?我用第一列作为 characters 构建了数据框,这些字符是国家名称,表的其余部分是数字。我认为它应该类似于 addrownums 但我没有看到它。

在下面输入

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")

【问题讨论】:

  • 查看?which.max 的手册页。如果只需要最大值或最小值,则无需对数据框进行排序。
  • 您的问题是您正在从数据框中提取一个向量(使用$),并且提取的向量不具有数据框中的行名称信息。相反,您可能想做head(TopKidnap, 1)["Kidnapping"]
  • 不排序 - TopKidnap[which.max(TopKidnap$Kidnapping), 'Kidnapping', drop = FALSE]

标签: r dataframe sorting head rowname


【解决方案1】:

一种可能的方法是子集 data.frame 而不是列。你可以这样做

head(TopKidnap[, "Kidnapping", drop=FALSE], 1)
#            Kidnapping
# Luxembourg       7.17

drop=FALSE 是为了防止 R 简化结果。通常,当您选择一列时,它会转换为向量。 drop=FALSE 将其保存为一个 data.frame 来保存行名。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-21
    • 2016-12-16
    • 1970-01-01
    相关资源
    最近更新 更多