Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何删除带有“的行”*&引用;在R程序中?_R_Symbols - Fatal编程技术网

如何删除带有“的行”*&引用;在R程序中?

如何删除带有“的行”*&引用;在R程序中?,r,symbols,R,Symbols,我想删除缺少该值的行。例如,我的数据框如下所示: dat <- data.frame( time = factor(c("Breakfast","Lunch","Lunch","Dinner"), levels=c("Breakfast","Lunch","Dinner")), total_bill = c(12.75,14.89,"*",17.23) ) dat我们可以将子集与一起使用= dat1 <- droplevels(subset(dat, total_bill

我想删除缺少该值的行。例如,我的数据框如下所示:

dat <- data.frame(
  time = factor(c("Breakfast","Lunch","Lunch","Dinner"), levels=c("Breakfast","Lunch","Dinner")),
  total_bill = c(12.75,14.89,"*",17.23)
)

dat我们可以将
子集
一起使用=

dat1 <- droplevels(subset(dat, total_bill != "*"))
dat1 <- type.convert(dat1, as.is = TRUE)
sum(dat1$total_bill, na.rm = TRUE)
#[1] 44.87

dat1如果
total\u bill
是字符,您可以将其转换为数字,这将自动将所有非字符转换为
NA
,并显示警告消息,然后您可以对其执行
sum
mean
或其他数学运算

sum(as.numeric(dat$total_bill),na.rm = TRUE)
#[1] 44.87

如果
total\u bill
是系数,则需要使用

sum(as.numeric(as.character(dat$total_bill)),na.rm = TRUE)

是的,它工作了,但是在移除新的数据帧之后,我们如何使用它呢?因为当我处理像sum(dat$total_bill)这样的函数时,它仍然会出错。是的,我投了赞成票,但我的声誉很低:(所以它告诉我:(