R 中 Excel 工作表中的数据子集化问题

问题描述 投票:0回答:1

我在将 r 中的 Excel 工作表中的数据子集到不同的段中时遇到问题。代码如下:

data<-read_excel("SegmentData.xlsx")

mdata<-data[data$gender=="Male"]

我得到的错误是这样的:

Error in data[data$gender == "Male"] :
✖ Logical subscript `data$gender == "Male"` must be size 1 or 7, not 300.

dput(头(数据))结果:

structure(list(age = c(36, 38, 45, 42, 45, 44), gender = c("Male", 
"Male", "Female", "Male", "Female", "Male"), income = c(66069, 
63766, 64939, 53163, 72122, 68229), kids = c(2, 3, 1, 4, 1, 4
), ownHome = c("ownNo", "ownNo", "ownNo", "ownNo", "ownYes", 
"ownNo"), subscribe = c("subNo", "subNo", "subNo", "subNo", "subNo", 
"subNo"), Segment = c("Suburb mix", "Suburb mix", "Suburb mix", 
"Suburb mix", "Suburb mix", "Suburb mix")), row.names = c(NA, 
-6L), class = c("tbl_df", "tbl", "data.frame"))

Excel 工作表中确实有 300 列和 7 个变量,但我认为这不应该是任何问题。我该如何解决这个问题?预先感谢!

我尝试将变量更改为其他变量,但仍然遇到相同的错误

r subset
1个回答
0
投票

你忘记了逻辑表达式后面的逗号

data$gender=="Male"

mdata <- data[data$gender=="Male", ]   # note the command after "Male"
© www.soinside.com 2019 - 2024. All rights reserved.