[英]How to combine several cells into data frame with one cell is missing (NULL) in R
[英]How to fulfill missing cells of a data frame in R?
我有一个像这样的数据集。
df = data.frame( name= c("Tommy", "John", "Dan"), age = c(20, NA, NA) )
我尝试将John和Dan设置为15岁。
df[ ( df$age != 20) , ]$age = 15
但是我得到如下错误
[<-。data.frame( tmp ,(df $ age!= 20),,value = list(name = c(NA_integer_,::数据帧的下标分配中不允许缺少值)
为这些丢失的单元格设置新值的好方法是什么?
尝试这个:
df$age[is.na(df$age)] <- 15
或使用您的语法样式:
df[is.na(df$age), ]$age = 15
由于df$age != 20
产生以下错误,因此出现以下错误:
[1] FALSE NA NA
在逻辑语句中, 年龄列中的NA
值未正确解释为不等于20。
我们可以使用is.na
library(data.table)
setDT(df)[is.na(age), age:= 15]
如果要修改所有非20的单元格,包括年龄的其他有效值,请执行以下操作:
# Creating a data frame with another valid age
df = data.frame( name= c("Tommy", "John", "Dan","Bob"), age = c(20, NA, NA,12) )
# Substitute values different than 20 for 15
df[df$age!=20 | is.na(df$age),"age"] <- 15
name age
1 Tommy 20
2 John 15
3 Dan 15
4 Bob 15
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.