加载RData对象时转换数据帧中的因子

加载RData对象时转换数据帧中的因子,r,dplyr,R,Dplyr,我有一个很大的.RData对象,它包含几十个数据帧和矩阵。我得到了这个对象,但没有创建它。当我使用load(data=myfile.Rdata)加载数据时,数据帧中充满了讨厌的因素。是否有一种简单的方法可以将所有这些数据帧中的因子转换为字符或数字,类似于read\u csv()与read.csv()的区别?当我使用每个数据帧时运行tbl_df()不会进行转换 下面是一个简单的例子: df1 <- data.frame(A = c('A','B','C','D'),

我有一个很大的
.RData
对象,它包含几十个数据帧和矩阵。我得到了这个对象,但没有创建它。当我使用
load(data=myfile.Rdata)
加载数据时,数据帧中充满了讨厌的因素。是否有一种简单的方法可以将所有这些数据帧中的因子转换为
字符
数字
,类似于
read\u csv()
read.csv()
的区别?当我使用每个数据帧时运行
tbl_df()
不会进行转换

下面是一个简单的例子:

df1 <- data.frame(A = c('A','B','C','D'),
              B = c('-0.011','10','15','-45'))

save(df1, file = "sto_test.RData")

## Load and show class
load(file = 'sto_test.RData')
str(df1)  

df1
mutate_each
mutate_all
使用
as.character
,在所有数据帧上迭代即可。据我所知,没有人将因子放入矩阵中。如果您想要自动转换
read\u csv
,我建议使用
read\u csv
<代码>加载
数据,使用
写入csv
将它们全部作为csv写入,使用
读取csv
将它们全部读取,将结果保存在新的RData对象中,这样您就不必重复。@Frank我包含矩阵位主要是出于沮丧,问题是关于数据帧的。