考虑以下数据:
subjectName <- c("John Doe", "Jane Doe")
temperature <- c(98.1, 98.6)
gender <- factor(c('male', 'female'), levels = c('male','female'))
ptData <- data.frame(subjectName, temperature, gender, stringsAsFactors = F)
我打电话的时候:
ptData[,1]
我按预期收到了第一列。但是,当我打电话时:
ptData[,-1]
R没有给我最后一栏。相反,它输出最后两个:
temperature gender
1 98.1 male
2 98.6 female
为什么我的电话不按预期工作?
答案 0 :(得分:1)
ptData[,-1]
为您提供除第一个之外的所有列。请尝试ptData[,ncol(ptData)]
获取最后一列。
(您可能会对行和列感到困惑......行之前的条目会对行进行索引。)
答案 1 :(得分:0)
在python alist [-1]中给出最后一个元素但不在R中。请参阅Getting the last element of a list in Python
除了ptData [,ncol(ptData)]之外,还可以使用长度函数:
获取清单:
> ptData[,length(ptData)]
[1] male female
Levels: male female
或获取数据框:
> ptData[length(ptData)]
gender
1 male
2 female