动态调用data.frame并填充行
我有以下问题:动态调用data.frame并填充行,r,dataframe,assign,R,Dataframe,Assign,我有以下问题: 我正在创建一个灵活数量的数据帧(或矩阵也可以),直到最后一个数据帧(或矩阵)已填充,但尚未填充,因此应区别对待 现在我想调用data.frame platen,然后用数据填充它。我想做一些像 assign(paste0("plate", n)[x,y], %some data%) 其中,[x,y]是数据帧(/matrix)中的位置,n是第n个数据帧 然而它总是给我 incorrect number of dimensions 你不能。请参见分配: “assign”不分派分配方
我正在创建一个灵活数量的数据帧(或矩阵也可以),直到最后一个数据帧(或矩阵)已填充,但尚未填充,因此应区别对待
现在我想调用data.frame plate
n
,然后用数据填充它。我想做一些像
assign(paste0("plate", n)[x,y], %some data%)
其中,[x,y]
是数据帧(/matrix)中的位置,n
是第n个数据帧
然而它总是给我
incorrect number of dimensions
你不能。请参见分配: “assign”不分派分配方法,因此不能分派 用于设置向量的元素、名称、属性等 (如果不能设置向量的元素,也不能为数据帧设置) 可能最好创建一个数据帧列表,而不是手动标记
plate1
,plate2
等。例如,假设plates
是一个list
,这样plates[[1]
就是plate 1,plates[[2]
就是plate 2,等等:
n <- length(plates)
plates[[n]] # is the plateN dataframe
plates[[n]][x, y] <- some_data
如果你喜欢冒险,lappy
很不错,例如
# suppose each plate was constructed by reading in a CSV
list_of_csvs <- list.files(pattern='*.csv')
plates <- lapply(list_of_csvs, read.csv)
# then plates[[1]] is the dataframe from the first csv, etc
#假设每个板都是通过读取CSV构建的
谢谢你的数学咖啡。然而,我不知道“构建数据框架的代码”是什么意思。它是否为data.frame提供了维度?我的问题更具体:我有p个排列,它们应该在n6*8的板中对齐。但是,如果(n!=48的倍数),则仅部分填充最后一个。我想这就是当我尝试将数据分配给图版[I]]时出现“尝试将属性设置为NULL”错误的地方好了,我想知道这个“构造数据框架的代码”是什么:图版[[p]]
# suppose each plate was constructed by reading in a CSV
list_of_csvs <- list.files(pattern='*.csv')
plates <- lapply(list_of_csvs, read.csv)
# then plates[[1]] is the dataframe from the first csv, etc