Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 将其设为^2时,列数增加一倍_R - Fatal编程技术网

R 将其设为^2时,列数增加一倍

R 将其设为^2时,列数增加一倍,r,R,我想将列加倍,同时乘以2的幂(^2)。我想找一个更直观的方法来做 对于复制: > dput(df) structure(list(V1 = c(0.174, 0.0149, 0.3701, 0.0996), V2 = c(9.438279, 10.038886, 33.23827, 5.912603), V3 = c(33.744, 24.534, 86.275, 13.98), V4 = c(2490, 192, 159, 26.01), V5 = c(606, 68, 47.2,

我想将列加倍,同时乘以2的幂(^2)。我想找一个更直观的方法来做

对于复制:

> dput(df)
structure(list(V1 = c(0.174, 0.0149, 0.3701, 0.0996), V2 = c(9.438279, 
10.038886, 33.23827, 5.912603), V3 = c(33.744, 24.534, 86.275, 
13.98), V4 = c(2490, 192, 159, 26.01), V5 = c(606, 68, 47.2, 
299)), row.names = c(1L, 2L, 3L, 4L), class = "data.frame")

> df
        V1        V2     V3      V4    V5
1  0.1740  9.438279 33.744 2490.00 606.0
2  0.0149 10.038886 24.534  192.00  68.0
3  0.3701 33.238270 86.275  159.00  47.2
4  0.0996  5.912603 13.980   26.01 299.0
这就是我一直以来所做的:

df$V1_2 <- df$V1^2
df$V2_2 <- df$V2^2
df$V3_2 <- df$V3^2
...

df$V1_2我们可以直接在数据集上使用它

df[paste0(names(df), "_2")] <- df^2
library(dplyr)
df %>% 
   mutate_all(list(`2` = ~ .^2))
#  V1        V2     V3      V4    V5       V1_2       V2_2      V3_2         V4_2      V5_2
#1 0.1740  9.438279 33.744 2490.00 606.0 0.03027600   89.08111 1138.6575 6200100.0000 367236.00
#2 0.0149 10.038886 24.534  192.00  68.0 0.00022201  100.77923  601.9172   36864.0000   4624.00
#3 0.3701 33.238270 86.275  159.00  47.2 0.13697401 1104.78259 7443.3756   25281.0000   2227.84
#4 0.0996  5.912603 13.980   26.01 299.0 0.00992016   34.95887  195.4404     676.5201  89401.00