Напишите функцию, которая делает то, что вы хотите, и используйте lapply
, чтобы сделать это для каждого элемента списка:
foo = function(x) cbind(x[1], x[-1])
result = lapply(your_list, foo)
Назовите ваш простой пример "simple":
lapply(simple, foo)
# [[1]]
# [,1] [,2]
# [1,] "Location1" "Location1_Bid1"
# [2,] "Location1" "Location1_Bid2"
# [3,] "Location1" "Location1_Bid3"
#
# [[2]]
# [,1] [,2]
# [1,] "Location2" "Location2_Bid1"
# [2,] "Location2" "Location2_Bid2"
# [3,] "Location2" "Location2_Bid3"
#
# [[3]]
# [,1] [,2]
# [1,] "Location3" "Location3_Bid1"
# [2,] "Location3" "Location3_Bid2"
# [3,] "Location3" "Location3_Bid3"
# [4,] "Location3" "Location3_Bid4"
#
# [[4]]
# [,1] [,2]
# [1,] "Location4" "Location4_Bid1"
# [2,] "Location4" "Location4_Bid2"
Это матрицы, а не кадры данных.Вы можете использовать cbind.data.frame
вместо cbind
, если хотите, чтобы кадры данных были удалены.Вы также можете добавить имена столбцов, как в примере вывода, например
foo = function(x) cbind.data.frame(Location = x[1], Bid = x[-1])