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

R 是否为列表中的每个数据帧添加后缀?

R 是否为列表中的每个数据帧添加后缀?,r,list,dataframe,R,List,Dataframe,我有一个包含几个数据帧的列表。我想为每个数据帧的名称添加一个后缀,以便在调用函数时 list2env() 并提取其名称之前添加了后缀的数据帧。 我该怎么做 样本数据 df1 <- as.data.frame(matrix(data = c(1,2,3))) df2 <- as.data.frame(matrix(data = c(1,2,3))) lst <- list(df1,df2) df1如果需要自动获取名为的列表,请在ls中使用mget和模式参数。在下面的代码中,

我有一个包含几个数据帧的列表。我想为每个数据帧的名称添加一个后缀,以便在调用函数时

list2env() 
并提取其名称之前添加了后缀的数据帧。 我该怎么做

样本数据

df1 <- as.data.frame(matrix(data = c(1,2,3)))
df2 <- as.data.frame(matrix(data = c(1,2,3)))
lst <- list(df1,df2)

df1如果需要自动获取名为
列表
,请在
ls
中使用
mget
模式
参数。在下面的代码中,我们将获得名称以子字符串“df”开头(
^
)后跟一个或多个数字(
\\d+
)直到字符串结尾(
$
)的对象的值

lst1 <- mget(ls(pattern = '^df\\d+$'))
如果我们需要创建新对象,只需更改
lst1

names(lst1) <- paste0(names(lst1), "_2018")
list2env(lapply(lst1, transform, new = V1 + 3), .GlobalEnv)

names(lst1)您可以创建一个命名列表
list(df1=df1,df2=df2)
假设我想在列表中的数据帧中添加后缀:“_2018”,我该怎么做?创建列表时是否需要使用您提到的功能?@Pietro是将df1_2018、df2_2018添加为列表名称还是列名称names@Pietro你能检查一下更新的代码吗。希望它能帮助你,它能工作!谢谢我只使用了行:names(lst1)
names(lst1) <- paste0(names(lst1), "_2018")
list2env(lapply(lst1, transform, new = V1 + 3), .GlobalEnv)