我是R的新手,我认为我从根本上错过了一些东西。为什么不能找到我提供的变量并且没有变化?换句话说,我根本不能使用我的变量。
> dat = read_sas("e:/Users/mhollifi/Desktop/cps/ex1_1/jan00pub.sas7bdat", "e:/Users/mhollifi/Desktop/cps/ex1_1/formats.sas7bcat")
> summary(PENATVTY)
Error in summary(PENATVTY) : object 'PENATVTY' not found
> names(dat)
[1] "PEEDUCA" "PENATVTY" "cntryorigin"
> print(dat)
# A tibble: 96,589 x 3
PEEDUCA PENATVTY cntryorigin
<dbl> <dbl> <dbl>
1 34.0 57.0 0
2 40.0 57.0 0
3 37.0 57.0 0
4 37.0 57.0 0
5 40.0 57.0 0
6 39.0 57.0 0
7 39.0 57.0 0
8 39.0 57.0 0
9 39.0 57.0 0
10 43.0 57.0 0
# ... with 96,579 more rows
> exists("PENATVTY")
[1] FALSE
> summary(PENATVTY)
Error in summary(PENATVTY) : object 'PENATVTY' not found
> lapply(PENATVTY, mean, na.rm = TRUE)
Error in lapply(PENATVTY, mean, na.rm = TRUE) :
object 'PENATVTY' not found
答案 0 :(得分:1)
PENATVTY
不是R会话中的对象。 dat
是一个名为PENATVTY
的列。
所有dat$PENATVTY
,dat[[PENATVTY]]
和dat[,"PENATVTY"]
都会返回您要查找的内容。如果您想使用summary
,可以执行以下操作:
PENATVTY <- dat$PENATVTY #creates a vector named PENATVTY containing the column from dat
summary(PENATVTY)
您也可以直接操纵dat$PENATVTY
:
summary(dat$PENATVTY)
如果您想要PENATVTY
的平均值,则不需要lapply
mean(dat$PENATVTY,na.rm=TRUE)
会给出平均值。