这是我从here获取数据集的地方。
当我第一次读入数据集并执行head
函数进行双重检查时,这是输出,我得到了显示的前7个变量,但后来我得到
Variables not shown: Status 11/18 (chr), Location 11/18 (chr), Age 11/18 (dbl), age grp (chr), Gender (chr),
Ethnic (chr), Prev Relig Aff (chr), Adult/Minor (chr), Resident US Pre-Guyana (chr), Occup US Pre Guyana
(chr), Govt Income (chr), JT Residence (chr), Occup in JT ~77 (chr), Occup JT ~Aug 78 (chr)
这是我的代码
library(readxl)
require(mosaic)
Jonestown = read_excel("C:/Users/Deborah/Desktop/School/STA 418/Homework/jonestown.xls", sheet = 1, col_names = TRUE, skip=0)
head(Jonestown)
接下来,我需要创建一个名为minors的数据集,其中只包含
(a)被确定为未成年人的人
(b)出生在美国的人和
(c)只有变量出生国家,圭亚那入境,11/18年级,11/18年龄,性别和族裔。你应该得到293个观察结果和6个变量。这就是我到目前为止所拥有的
minor = Jonestown$`Adult/Minor`=="Minor" & Jonestown$`Birth Country`=="USA"
Minors = Jonestown[minor,]
我不知道下一步该去哪里。有人能帮我吗?
答案 0 :(得分:1)
请改用此套餐。适合我:
install.packages("xlsx")#Excel
require("xlsx")#Excel
read.xlsx("C:/Users/Deborah/Desktop/School/STA 418/Homework/jonestown.xls",1)
答案 1 :(得分:0)
首先,在处理read_excel
时,您首先提出的输出(“变量未显示”)完全正常并且是预期的。更重要的是,您可能会注意到(通过实验)read_excel
返回类tbl_df
,来自Hadleyverse的包,旨在提供更直观/更优雅的数据框架表示和处理。它很难根据当前窗口的宽度(字符数)限制输出或“查看”data.frame的内容。 (当然,只有在您之前完成library(dplyr)
时才会这样做。)
其次,对于过滤,因为你已经使用了Hadleyverse的一个组件,我会建议第二个(虽然这里不是绝对必要的):
library(dplyr)
dat %>%
filter(`Adult/Minor` == 'Minor', `Birth Country` == 'USA') %>%
select(`Birth State`, `Guyana Entry`)
## Source: local data frame [293 x 2]
## Birth State Guyana Entry
## (chr) (time)
## 1 CA <NA>
## 2 MI 1977-09-23
## 3 MS 1977-08-28
## 4 CA <NA>
## 5 CA 1977-07-23
## 6 CA <NA>
## ...
这只是一个开始,你应该能够引入你想要的其他变量。我强烈推荐dplyr
教程,例如vignette that comes with it。
注意:因为 R (参见?data.frame
和?make.names
)的列名不是严格合法的(对于一个单词来说太苛刻了?),你需要使用反引号而不是单引号或双引号。