Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/83.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_Dplyr - Fatal编程技术网

R 如果列由数字组成,则更改列类

R 如果列由数字组成,则更改列类,r,dplyr,R,Dplyr,我有一个数据框,在这个数据框中,我必须将所有变量转换为character类,以便绑定行()。现在,我想识别并将包含数字的列转换回numeric类。我有41个值,所以我不想分别对它们进行变异 最好是整洁的方式 library(dplyr) data_frame(number_var = as.character(rnorm(1:26)), character_var = LETTERS) 您可以使用readr包中的parse\u guess: library(dplyr)

我有一个数据框,在这个数据框中,我必须将所有变量转换为
character
类,以便
绑定行()
。现在,我想识别并将包含数字的列转换回numeric类。我有41个值,所以我不想分别对它们进行变异

最好是整洁的方式

library(dplyr)

data_frame(number_var = as.character(rnorm(1:26)),
           character_var = LETTERS)

您可以使用
readr
包中的
parse\u guess

library(dplyr)
library(readr)

df <- data_frame(number_var = as.character(rnorm(1:26)),
           character_var = LETTERS)

df %>% 
  mutate_all(parse_guess) # guess column type for each column
库(dplyr)
图书馆(readr)
df%
mutate_all(parse_guess)#猜测每列的列类型

您可以使用
parse\u guess
from
readr
软件包:

library(dplyr)
library(readr)

df <- data_frame(number_var = as.character(rnorm(1:26)),
           character_var = LETTERS)

df %>% 
  mutate_all(parse_guess) # guess column type for each column
库(dplyr)
图书馆(readr)
df%
mutate_all(parse_guess)#猜测每列的列类型

x[]@snoram这也将匹配,例如
“abc123”
。它应该更加明确:
lappy(df,函数(x)if(any(grepl(“^\\d+$”,x)))as.numeric(x)else x)
或者甚至有一个阈值:
lappy(df,函数(x)if(mean(grepl(^\\d+$”,x))>.5)as.numeric(x)else x)
。@Tino Right。但是按照字面上的说明就足够了:转换包含数字的列them@snoram哈哈,真的!:-)
x[]@snoram这也将匹配,例如
“abc123”
。它应该更加明确:
lappy(df,函数(x)if(any(grepl(“^\\d+$”,x)))as.numeric(x)else x)
或者甚至有一个阈值:
lappy(df,函数(x)if(mean(grepl(^\\d+$”,x))>.5)as.numeric(x)else x)
。@Tino Right。但是按照字面上的说明就足够了:转换包含数字的列them@snoram哈哈,真的!:-)哦,谢谢!我不知道
parse\u guess
函数,谢谢!顺便说一下,我改变了我的示例数据框,这样你就可以删除你的代码> MutaTyGALL(AS。字符)%> %<代码> LIN。OK -删除它。@ Tdebeus考虑接受答案,如果它解决了你的问题。谢谢!我不知道
parse\u guess
函数,谢谢!顺便说一下,我改变了我的示例数据框,这样你就可以删除你的<代码> MutaTyGALL(AS。字符)%> %>代码> LI.OK -删除它。@ Tdebeus考虑接受答案,如果它解决了你的问题。