我正在尝试根据用户提供的输入创建一个数据框。用户将决定要包含在数据框中的变量数量。
下面,我提供了我所要执行的代码。我想做的是创建一个执行相同任务的函数。
var1 <- c(1:6)
var2 <- c(1:6)
var3 <- c(1:6)
var1 <- sample(var1, 10, replace = TRUE)
var2 <- sample(var2, 10, replace = TRUE)
var3 <- sample(var3, 10, replace = TRUE)
mydata <- data.frame(var1, var2, var3)
我希望下面的输出。
var1 var2 var3
1 4 1 3
2 2 5 1
3 5 6 2
4 4 5 2
5 5 3 3
6 5 5 2
7 1 3 6
8 3 5 5
9 2 4 1
10 5 5 5
答案 0 :(得分:1)
make_df <- function(n, x = 1:6, nrow = 10, var_prefix = 'var'){
out <- as.data.frame(matrix(sample(x, nrow*n, TRUE), nrow, n))
# or: out <- as.data.frame(replicate(n, sample(x, nrow, TRUE), simplify = F))
setNames(out, paste0(var_prefix, seq_along(out)))
}
make_df(5)
# var1 var2 var3 var4 var5
# 1 5 3 1 1 3
# 2 2 2 4 4 3
# 3 2 2 3 6 3
# 4 3 2 6 4 4
# 5 3 1 6 1 1
# 6 6 2 4 2 2
# 7 4 6 6 5 6
# 8 4 3 2 4 6
# 9 4 6 6 4 4
# 10 4 2 1 5 1
make_df(n = 5, x = 10:20, nrow = 4, var_prefix = 'col')
# col1 col2 col3 col4 col5
# 1 16 13 16 10 11
# 2 17 10 12 12 16
# 3 16 11 10 11 15
# 4 15 14 13 14 11
答案 1 :(得分:0)
module.exports { //or export default {
build: {
publicPath: '/',
vendor: ['axios','firebase', "jquery", 'popper', "bootstrap", 'bootbox'],
extractCSS: true,
babel: {
presets: [
'es2015',
'stage-0'
],
plugins: [
[
"transform-runtime",
{
"polyfill":true,
"regenerator":true
},
"~/plugins/firebase.js",
new webpack.ProvidePlugin({
jQuery: 'jquery',
$: 'jquery',
jquery: 'jquery'
})
],
]
},
// adding the below object made the compilation time go up again to
//"normal"
loaders: {
vue: {
prettify: false
}
},
/*
** You can extend webpack config here
*/
extend(config, ctx) {
config.devtool = ctx.isClient ? 'eval-source-map' : 'inline-source-map'
}
}
}