r - 使用行和向数据框(R)添加新列
问题描述
编辑:讲师建议在我们进入数据分析时使用 Stack Overflow 来寻求社区支持并利用社区。我是一名成熟的学生,这是一次职业转型的尝试。我的目标是学习,大家都很棒——谢谢你的帮助 这是我的第一个任务,我正在努力自己完成它——但我遇到了障碍
我有一个数据框CrimeDataTheft。它的列主要是数字和一个字符。我正在尝试创建一个名为 Country Totals 的新列,它将是行数字数据(如下所示)的总和。我没有包含 Country 列,因为它是一个字符列。
我将带有 sum 变量的旧列和新列放在名为 SumCrimeData 的数据框中
SumCrimeData <- CrimeDataTheft$Country.Totals = rowsum(CrimeDataTheft[,c(Intentional.homicide,
Attempted.intentional.homicide, Assault, Kidnapping, Sexual.violence
, Robbery, Unlawful.acts.involving.controlled.drugs.or.precursors)], na.rm = TRUE)
我得到的错误是
Error in `[.data.frame`(CrimeDataTheft, , c(Intentional.homicide, Attempted.intentional.homicide, :
object 'Intentional.homicide' not found
我正在从 csv 中提取数据,并且名称被完全复制。有人可以指出我要去哪里错了吗?谢谢!!
dput(head(CrimeDataTheft, 5))
structure(list(Country = c("Albania", "Austria", "Belgium", "Bosnia and Herzegovina",
"Bulgaria"), Intentional.homicide = c(2.03, 0.84, 1.27, NA, 1.14
), Attempted.intentional.homicide = c(3.25, 1.93, 8.87, NA, 0.54
), Assault = c(5.52, 43.29, 556.36, NA, 39.54), Kidnapping = c(0.14,
0.07, NA, NA, 1.03), Sexual.violence = c(5.38, 50.9, 77.45, NA,
8.64), Robbery = c(3.42, 29.67, 140.14, NA, 16.9), Unlawful.acts.involving.controlled.drugs.or.precursors = c(70.26,
494.05, 547.74, NA, 78.14), Country.Totals = c(90, 620.75, 1331.83,
0, 145.93), Country.Totals.per.000s = c(90, 620.75, 1331.83,
0, 145.93)), row.names = c(NA, 5L), class = "data.frame")
解决方案
根据您在评论中提到的内容,您似乎没有SumCrimeData
数据框。如果您决定使用rowSums
而不是rowsum
您将需要创建SumCrimeData
数据框。
应该对您选择的行求和并创建一个名为的新列Country.Totals
CrimeDataTheft$Country.Totals <- rowSums(CrimeDataTheft[,c("Intentional.homicide","Attempted.intentional.homicide", "Assault", "Kidnapping", "Sexual.violence","Robbery", "Unlawful.acts.involving.controlled.drugs.or.precursors")], na.rm = TRUE)
然后,您可以通过执行以下操作来创建新的数据框
SumCrimeData <- as.data.frame(CrimeDataTheft$Country.Totals)
或者如果您不希望它作为数据框,您可以这样做
SumCrimeData <- CrimeDataTheft$Country.Totals
我不确定您是否可以像您在问题中显示的那样在同一步骤中创建一个新列和一个新数据框,即SumCrimeData <- CrimeDataTheft$Country.Totals = rowsum(...)
推荐阅读
- java - 控制器 SpringBoot Java 的单元测试
- java - Spring security - 启用 HTTPS - 客户端未经授权获得 403
- android - 需要在后按的android上打开家庭活动
- swift - 使用自定义 segue swift 使用图像移动背景过渡
- sql - 在 SQL Server 中创建用户架构级别
- apache-kafka - Kafka集群配置问题
- python - 如何在 python 和 opencv 中移动 ROI 的顶点?
- angular - Angular 8 中的组件交互
- c# - Parallel.Foreach 覆盖 System.IO.File 操作并导致错误
- php - 在 URL 显示详细信息中加密 site_id