创建一个复杂的空列表或数据框

Creating a complicated empty list or data frame

我有一个变量,它是一个列表。

[[1]]

      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]

 [1,]    1    1    1    1    1    1    1    4

 [2,]    1    1    1    1    1    1    1    4

 [3,]    1    1    1    1    1    1    1    4

 [4,]    1    1    1    1    1    1    1    4

 [5,]    1    1    1    1    1    1    1    4

 [6,]    1    1    1    1    1    1    1    4

 [7,]    1    1    1    1    1    1    1    4

 [8,]    1    1    1    1    1    1    1    4

 [9,]    1    1    1    1    1    1    1    4

[10,]    1    1    1    1    1    1    1    4

[11,]    1    1    1    1    1    1    1    4



[[2]]

      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]

 [1,]    1    1    1    1    1    1    1    3

 [2,]    1    1    1    1    1    1    1    4

 [3,]    1    1    1    1    1    1    1    4

 [4,]    1    1    1    1    1    1    1    3

 [5,]    1    1    1    1    1    1    1    4

 [6,]    1    1    1    1    1    1    1    4

 [7,]    1    1    1    1    1    1    1    4

 [8,]    1    1    1    1    1    1    1    4

 [9,]    1    1    1    1    1    1    1    4

[10,]    1    1    1    1    1    1    1    4

[11,]    1    1    1    1    1    1    1    4

我需要一个与此变量格式相同的空变量。 我的函数将进行一些计算,并将放在与该变量相同的位置。但是在新变量中我不会有第 8 列。

复制您的数据

df = list(matrix(rep(1, 88), ncol = 8), matrix(rep(1, 88), ncol = 8))

从所有子列表中删除第 8 列

new_df = lapply(df, function(x) x[,-8])

从所有子列表中删除第 8 列并将所有 1 替换为 NA

new_df = lapply(df, function(x) replace(x[,-8], x[,-8] == 1, NA))