Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/64.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 如何用NA值替换某些列(特别是“NAICSP”和“SOCP”)中的空格(“”)_R_Na_Missing Data - Fatal编程技术网

R 如何用NA值替换某些列(特别是“NAICSP”和“SOCP”)中的空格(“”)

R 如何用NA值替换某些列(特别是“NAICSP”和“SOCP”)中的空格(“”),r,na,missing-data,R,Na,Missing Data,在RStudio。不确定如何仅替换某些列中的空格-并且基于它们的名称。 我试过很多版本的 census_data[c("NAICSP","SOCP") == ""] <- NA 对于基本R选项,您可以尝试在列模式下使用apply: cols <- c("NAICSP","SOCP") census_data[, cols] <- apply(census_data[, cols], 2, function(x) { ifelse(x == "", NA, x) })

在RStudio。不确定如何仅替换某些列中的空格-并且基于它们的名称。 我试过很多版本的

census_data[c("NAICSP","SOCP") == ""] <- NA
对于基本R选项,您可以尝试在列模式下使用apply:

cols <- c("NAICSP","SOCP")
census_data[, cols] <- apply(census_data[, cols], 2, function(x) {
    ifelse(x == "", NA, x)
})
对于基本R选项,您可以尝试在列模式下使用apply:

cols <- c("NAICSP","SOCP")
census_data[, cols] <- apply(census_data[, cols], 2, function(x) {
    ifelse(x == "", NA, x)
})
免责声明:这个答案使用的是我碰巧写的一个包。如果可以使用包,则可以使用mde中的recode_as_na,并提供子集_cols向量,如下所示:

census_data<- data.frame(ID = c("A","B","B","A"),
                         NAICSP = c("",NA,"Yes","No"),
                          SOCP = c("","","",""))
 # install.packages("devtools")
 # devtools::install_github("Nelson-Gon/mde")
 mde::recode_as_na(census_data,subset_df=TRUE,
                   subset_cols = c("NAICSP","SOCP"),
                   value="")
  ID NAICSP SOCP
1  A   <NA>   NA
2  B   <NA>   NA
3  B    Yes   NA
4  A     No   NA
Warning message:
In recode_as_na.data.frame(census_data, subset_df = TRUE, subset_cols = c("NAICSP",  :
  Factor columns have been converted to character
注:

警告信息是为了提醒用户幕后对角色的强制。

免责声明:此答案使用的是我碰巧编写的软件包。如果可以使用包,则可以使用mde中的recode_as_na,并提供子集_cols向量,如下所示:

census_data<- data.frame(ID = c("A","B","B","A"),
                         NAICSP = c("",NA,"Yes","No"),
                          SOCP = c("","","",""))
 # install.packages("devtools")
 # devtools::install_github("Nelson-Gon/mde")
 mde::recode_as_na(census_data,subset_df=TRUE,
                   subset_cols = c("NAICSP","SOCP"),
                   value="")
  ID NAICSP SOCP
1  A   <NA>   NA
2  B   <NA>   NA
3  B    Yes   NA
4  A     No   NA
Warning message:
In recode_as_na.data.frame(census_data, subset_df = TRUE, subset_cols = c("NAICSP",  :
  Factor columns have been converted to character
注:


警告信息是为了提醒用户幕后对角色的胁迫。

你好,Dianna Li。通过添加一个,你可以帮助别人帮助你!您说过您尝试了许多版本:您是否尝试过人口普查数据[census_data$NAICSP%in%,NAICSP]替换文件中的所有空格,而不仅仅是两列。编辑:这确实有效。看错了栏目。但是,我不熟悉$和%部分的功能。当前代码:census_data[census_data$NAICSP%in%,NAICSP]你好,Dianna Li。通过添加一个,你可以帮助别人帮助你!您说过您尝试了许多版本:您是否尝试过人口普查数据[census_data$NAICSP%in%,NAICSP]替换文件中的所有空格,而不仅仅是两列。编辑:这确实有效。看错了栏目。但是,我不熟悉$和%在%部分的作用。当前代码:census_data[census_data$NAICSP%在%,NAICSP]