我df
在Rstudio中有一个数据框。我想提取列diff
并使用以下代码删除第一行:
# Import data and packages
library(outbreaks)
df <- measles_hagelloch_1861[order(measles_hagelloch_1861$date_of_prodrome), c(1, 3)]
library(lubridate)
library(plyr)
# Generate variable diff
df$diff <- difftime(lag(df$date_of_prodrome, 1), df$date_of_prodrome, units = "days" )
# Subset dataset
time_between_two_events <- as.data.frame(df[-1, 'diff'])
head(time_between_two_events)
和结果
df[-1, "diff"]
1 2
2 6
3 0
4 1
5 3
6 0
您能解释一下为什么我得到奇怪的变量名df[-1, "diff"]
吗?我希望它应该是diff
。
由于子集只有一列,因此它将数据帧更改为向量。
df[-1, 'diff']
#Time differences in days
#[1] -2 -6 0 -1 -3 0 -1 -1 .....
然后将此向量转换为data.frame,并给出一个奇怪的名称。
使用drop = FALSE
以避免强迫数据帧矢量。
df[-1, 'diff', drop = FALSE]
# diff
#173 -2 days
#177 -6 days
#178 0 days
#174 -1 days
#45 -3 days
#183 0 days
#175 -1 days
#...
#...
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句