Несколько значений столбца

В отличие от браузера, где переменные по умолчанию назначаются глобальному пространству (то есть окну), переменные узла привязаны к модулю (файлу) , если вы явно не назначили их module.exports .

На самом деле, когда вы запускаете node myfile.js или require('somefile.js'), код в вашем файле завернут следующим образом:

(function (exports, require, module, __filename, __dirname) {
     // your code is here
});
0
задан Ronak Shah 17 January 2019 в 08:50
поделиться

4 ответа

С основанием R

apply(df, 2, prod)
<час>

С dplyr

library(dplyr)
df %>%
  summarise_all(prod)
0
ответ дан Ric S 17 January 2019 в 08:50
поделиться

Вот быстрое решение с использованием функции apply() в базовом пакете.

# generating a sample df
df <- as.data.frame(matrix(runif(20),nrow=4))

# using apply function to calculate the product of each column
# returns a vector
# prod = product of numbers
# margin = 2 applies it on each column
prodcol <- apply(df,FUN=prod,MARGIN=2)
0
ответ дан Calvin Whealton 17 January 2019 в 08:50
поделиться

С помощью tidyverse вы можете сделать:

df %>%
 mutate_all(funs(cumprod(.)))

         col_1        col_2        col_3
1 6.751475e-04 1.346051e-03 6.971176e-04
2 9.836205e-07 2.186721e-07 2.535511e-07
3 1.188370e-09 1.979208e-10 1.613849e-10
4 1.013463e-12 1.607656e-13 5.380640e-14
5 1.620561e-15 5.223418e-17 3.424770e-17
6 1.382043e-18 4.242838e-20 1.141832e-20

cumprod() выполняет кумулятивное умножение.

Или, если вы хотите только последний ряд:

df %>%
 summarise_all(funs(last(cumprod(.))))

        col_1        col_2        col_3
1 1.382043e-18 4.242838e-20 1.141832e-20
0
ответ дан tmfmnk 17 January 2019 в 08:50
поделиться

Вы можете использовать cumprod:

df <- data.frame(a = c(1, 2, 3), b = c(4, 5, 6))

Это создаст этот фрейм данных:

  a b
  1 4
  2 5
  3 6

cumprod(df)

Это выдаст:

  a   b
  1   4
  2  20
  6 120

Далее, вы можете взять последняя строка для получения окончательного результата:

cumprod(df)[nrow(df), ]

И вы просто получите

  a   b
  6 120
0
ответ дан orrymr 17 January 2019 в 08:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: