如何通过随机样本获取两个不同数据框的子集进行比较?

时间:2017-09-20 08:24:32

标签: r dataframe random

我想比较两个不同的数据框架。两个数据帧都包含相同数量的行和列。第一数据帧(1)是从0到1的购买概率,而第二数据帧(2)是二进制编码的并且表示用户的实际购买。

我现在的斗争是,如何从df(1)中获取RANDOM子集,这在df(2)中也是相同的来比较这个子集?

例如:如何获取df(1)的100个用户(行)和两个产品(列)的子集,与df(2)相同。

这可能吗?
或者我是否必须首先重新操作我的数据框?
一般情况下,可以通过user_ID连接两个数据框 - 如果这可能很重要。

# FIRST DF CONSISTS OF PROBABILITIES
df_probabilities <- data.frame(matrix(runif(20000,0,1), nrow=1000,ncol = 20))
# SECOND DF CONSISTS OF BINARY DATA
library("Matrix")
df_binary <- data.frame(as.matrix(rsparsematrix(1000, 20,nnz = 800,  rand.x = runif)))
df_binary[df_binary > 0] = 1

1 个答案:

答案 0 :(得分:0)

基于随机指数的抽样应该有帮助

set.seed(100)
user_index = sample(1:100)

subs1 = df1[user_index,]
subs2 = df2[user_index,]