我只是从R开始,遇到了一个奇怪的行为:当在一个空的数据框中插入第一行时,原来的列名会丢失。 例: a<-data.frame(one = numeric(0), two = numeric(0)) a #[1] one two #<0 rows> (or 0-length row.names) names(a) #[1] "one" "two" a<-rbind(a, c(5,6)) a # X5 X6 #1 5 6 names(a) #[1] "X5" "X6" 正如你所看到的,列名称1和2被X5和X6取代。 有人可以告诉我为什么发生这种情况,有没有一个正确的方法来做到这一点,而不会丢失列名? 猎枪解决scheme将保存在一个辅助向量中的名称,然后在dataframe上完成工作后将其添加回来。 谢谢 语境: 我创build了一个收集一些数据的函数,并将它们作为一个新行添加到作为参数接收的dataframe中。 我创build数据框,遍历数据源,将data.frame传递给每个函数调用以填充其结果。
假设我需要生成variables来保存用户的input(我不知道他们有多less)。 没有使用Array , ArrayList (和其他types的列表和地图),我的代码可以生成(让我们说) StringvariablesX倍与名称像( String var001 , String var002 , String var003等)? 如果是,请提供示例代码。
在下面的最简单的例子中,我试图在回归公式中使用stringvars的值。 但是,我只能将这个string的variables名称(“v2 + v3 + v4”)传递给公式,而不是这个string的真正含义(例如“v2”是dat $ v2)。 我知道有更好的方法来运行回归(例如, lm(v1 ~ v2 + v3 + v4, data=dat) )。 我的情况更复杂,我想弄清楚如何在公式中使用string。 有什么想法吗? 更新下面的代码 # minimal example # create data frame v1 <- rnorm(10) v2 <- sample(c(0,1), 10, replace=TRUE) v3 <- rnorm(10) v4 <- rnorm(10) dat <- cbind(v1, v2, v3, v4) dat <- as.data.frame(dat) # create objects of […]
是否可以连接C中的variables名? 具体来说,我有一个struct ,其中包含6个类似的variables,它称为class1 , class2 , class3等 我想运行一个for循环来分配每个variables的值,但我不明白如何做到这一点,没有多less连接variables名称与for循环计数器的值。 我还能怎么做?