我想在列表的每个数据框中添加一列,其中两列(col1和col2)的值是连接的
# create new column #
original.list <- lapply(original.list, cbind, new_column = c(""))
# add data to new column
new.list <- lapply(original.list, function (x) x$new_column = paste(x$col1, x$col2, sep = "_"))
但是,这似乎是错误的,因为结果是只包含新列的列表。
这就是我的original.list的每个数据框看起来像
col1 col2
name1 1
name2 2
name3 3
这就是我的new.list的每个数据框应该是什么样子
col1 col2 new_column
name1 1 name1_1
name2 2 name2_2
name3 3 name3_3
答案 0 :(得分:5)
您的示例不可重复,但如果您想要var current_Url = "";
function makeUrl() {
var base = window.location.origin;
var e = document.getElementById("select");
var val = e.options[e.selectedIndex].value;
if (current_Url === "") {
current_Url = base + val;
document.getElementById('cu').innerHTML = current_Url;
//Comment out the next line on you actual site
//document.location.href = current_Url;
}
else {
current_Url += val;
document.getElementById('cu').innerHTML = current_Url;
//Comment out the next line on you actual site
//document.location.href = current_Url;
}
}
而不仅仅是新列,则可能应该从函数返回x
...
x
答案 1 :(得分:-1)
我不确定您要做什么,但似乎您只是尝试从数据框中的其他两列创建新列。 lapply对此有点矫枉过正。尝试以下(假设我正确理解了问题):
new.list <- original.list
new.list$new_column <- paste0(new.list$col1, new.list$col2, sep="_")